Monad package:ghc is:module
Hides away distracting bookkeeping while lambda lifting into a
LiftM monad.
Monadic definitions for the constraint solver
Functions for working with the typechecker environment (setters,
getters...).
Utilities related to Monad and Applicative classes Mostly for
backwards compatibility.