Combining IO and state monads

Derek Elkins ddarius@hotpop.com
Sat, 17 May 2003 14:28:24 -0400


On Thu, 15 May 2003 21:07:47 +0100
Graham Klyne <GK@ninebynine.org> wrote:

> It appears that what I want in the near term is to apply "StateT" to 
> "IO".  Hopefully, working with that will help to develop my intuitions
> for the more general cases.  (It would help if the GHC libraries were
> more documented, but I guess we can't expect everything on a plate
> just yet.)

See MonadTemplateLibrary on HaWiki, there is documentation of many of
the Monad* classes.  While the transformers aren't explicitly
documented, they are all instances of their respective Monad* class. 
About the only thing you need to know about besides that for monad
transformers is lift, liftIO, and how certain features interact when
lifted through certain monads (like callCC through State).