Proposal: Make StateT in mtl lazy

Ian Lynagh igloo at
Sun Feb 4 19:13:27 EST 2007

On Wed, Jan 31, 2007 at 03:48:25PM +0000, Ian Lynagh wrote:
> Control.Monad.State.Class -- for the MonadState class
> Control.Monad.State.Lazy
> Control.Monad.State.Strict
> Control.Monad.State -- re-exports .Class and .Lazy

Now done. Here's the patch description:

[Rejig mtl; trac proposal #1127
Ian Lynagh <igloo at>**20070205000253
 Moved the MonadFoo classes to Control.Monad.Foo.Class.
 Put the instances consistently in the module which defines the type they
 give an instance for.
 Made the existing transformers lazy to match the existing monads, and put
 them in Control.Monad.Foo.Lazy. Also added Control.Monad.Foo.Strict with
 strict monads and transformers. Control.Monad.Foo still exports what it
 used to.
 Created a MonadRWS class.
 Made the MonadWriter w (ErrorT e m) instance strict to match everything



More information about the Libraries mailing list