Portability | portable |
---|---|
Stability | experimental |
Maintainer | libraries@haskell.org |
Safe Haskell | Safe-Inferred |
The MonadTrans class.
Inspired by the paper /Functional Programming with Overloading and Higher-Order Polymorphism/, Mark P Jones (http://web.cecs.pdx.edu/~mpj/) Advanced School of Functional Programming, 1995.
Documentation
class MonadTrans t whereSource
lift :: Monad m => m a -> t m aSource
mt :: Monad m => Transformation t mSource
unlift :: (Monad m, Monad n) => (forall f. Functor f => (forall x. t m x -> m (f x)) -> n (f a)) -> t n aSource
tmixmap :: (Monad m, Monad n) => (forall a. m a -> n a) -> t m c -> t n cSource
MonadTrans ListT | |
MonadTrans IdentityT | |
MonadTrans (ContT r) | |
MonadTrans (StateT s) | |
Monoid w => MonadTrans (WriterT w) | |
Monoid w => MonadTrans (WriterT w) | |
MonadTrans (StateT s) | |
MonadTrans (ReaderT r) | |
Error e => MonadTrans (ErrorT e) | |
MonadTrans (MonadStateReaderT s) | |
MonadTrans (Tagged tag) | |
(MonadTrans t1, MonadTrans t2) => MonadTrans (:> t1 t2) | |
Monoid w => MonadTrans (RWST r w s) | |
Monoid w => MonadTrans (RWST r w s) |
class Monad m => MonadIO m whereSource
MonadIO IO | |
MonadIO m => MonadIO (ListT m) | |
MonadIO m => MonadIO (ContT r m) | |
MonadIO m => MonadIO (StateT s m) | |
(Monoid w, MonadIO m) => MonadIO (WriterT w m) | |
(Monoid w, MonadIO m) => MonadIO (WriterT w m) | |
MonadIO m => MonadIO (StateT s m) | |
MonadIO m => MonadIO (ReaderT r m) | |
(Error e, MonadIO m) => MonadIO (ErrorT e m) | |
(Monoid w, MonadIO m) => MonadIO (RWST r w s m) | |
(Monoid w, MonadIO m) => MonadIO (RWST r w s m) |
data Transformation t m whereSource
MT :: Monad (t m) => Transformation t m |
tmap :: (MonadTrans t, Monad m, Monad n) => (forall a. m a -> n a) -> t m c -> t n cSource