>>31
Try implementing the State monad or Parsec in Javascript, like I did.
http://chrisdone.com/stuff Then realise they are not monads because Javascript doesn't have polymorphism so one can't generalise the bindM and returnM functions. That's what monads are all about.