Concrete functor and monad transformers

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow to host generated Haddocks.

BSD-3-Clause licensed by Andy Gill, Ross Paterson
Maintained by Ross Paterson

A portable library of functor and monad transformers, inspired by the paper

This package contains:

  • the monad transformer class (in Control.Monad.Trans.Class)

  • concrete functor and monad transformers, each with associated operations and functions to lift operations associated with other transformers.

The package can be used on its own in portable Haskell code, in which case operations need to be manually lifted through transformer stacks (see Control.Monad.Trans.Class for some examples). Alternatively, it can be used with the non-portable monad classes in the mtl or monads-tf packages, which automatically lift operations introduced by monad transformers through other transformers.