[Haskell-beginners] monad transformers
Michael P Mossey
mpm at alumni.caltech.edu
Fri Aug 14 20:55:02 EDT 2009
In Martin Grabmuller's tutorial "Monad Transformers Step by Step", found here
he gives an example of composing ErrorT, StateT, ReaderT, and WriterT. Early in
the paper, where he composes just ErrorT and ReaderT
type Eval3 a = ReaderT Env (ErrorT String Identity) a
he uses 'ask' and 'throwError' in some example code. I notice that he doesn't
have to lift throwError into the ErrorT monad. Why is this? Do I misunderstand
something about monad transformers? Is it a convenience definition of throwError?
Same thing the rest of the paper. I don't see anywhere he lifts anything.
More information about the Beginners