Monads and monad transformers implemented in Javascript.