The identity monad transformer.
This is useful for functions parameterized by a monad transformer.
The identity functor and monad.
This trivial type constructor serves two purposes:
* It can be used with functions parameterized by functor or monad classes.
* It can be used as a base monad to which a series of monad transformers may be applied to construct a composite monad. Most monad transformer modules include the special case of applying the transformer to Identity. For example, State s is an abbreviation for StateT s Identity.
Identity functor and monad.
The trivial monad transformer, which maps a monad to an equivalent monad.
Lift a unary operation to the new monad.