Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Factorial in LISP

Name: Anonymous 2011-02-05 13:59


factorial 1->1; n->n*(factorial n-1)


compare to Haskell

factorial::Integer->Integer
factorial 0=1
factorial n=n*factorial(n-1)

Name: Anonymous 2011-02-06 14:28

>>79
You dont need memoization to program video games.
But you do need side effects and maps to easily code stuff like

cursors =:
  ["human"=
     ["point"    =[ 3  2 (loadSprite 28 32 "ui/human/cursors/point.png")]
      "invalid"  =[ 3  2 (loadSprite 31 32 "ui/human/cursors/invalid.png")]
      "ch-green" =[15 15 (loadSprite 32 32 "ui/human/cursors/ch-green.png")]
      "ch-yellow"=[15 15 (loadSprite 32 32 "ui/human/cursors/ch-yellow.png")]
      "ch-red"   =[15 15 (loadSprite 32 32 "ui/human/cursors/ch-red.png")]]
   "orc"=
     ["point"    =[ 3  2 (loadSprite 26 32 "ui/orc/cursors/point.png")]
      "invalid"  =[ 3  2 (loadSprite 28 32 "ui/orc/cursors/invalid.png")]
      "ch-green" =[15 15 (loadSprite 32 32 "ui/orc/cursors/ch-green.png")]
      "ch-yellow"=[15 15 (loadSprite 32 32 "ui/orc/cursors/ch-yellow.png")]
      "ch-red"   =[15 15 (loadSprite 32 32 "ui/orc/cursors/ch-red.png")]]
   ]

cursor =: cursors."human"."point"
cursorXY =: [screen.w/2 screen.h/2]

main input gfx ->
  updateWorld input gfx !world && drawViewport world.thisPlayer world gfx

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List