Basic definitions in the category (* > *)
.
Documentation
type :> m n = forall a. m a > n aSource
m :> n
is the set of morphisms (from m
to n
, naturally) in our category.
If t
is an endofunctor in our category, then t :$ m
is basically the same as t m
.
If t1
and t2
are endofunctorsm then t2 :. t1
is their composition (which is also an endofunctor)
ComposeF  

(TransM t1, MonadTrans t2) => MonadTrans (:. t2 t1)  
(TransM t1, TransM t2) => TransM (:. t2 t1)  
(TransF t1, TransF t2) => TransF (:. t2 t1)  
(TransP t1, TransP t2) => TransP (:. t2 t1)  
(Monad m, TransM t1, TransM t2) => Monad (:. t2 t1 m)  
(MonadFix m, TransF t1, TransF t2) => MonadFix (:. t2 t1 m)  
(MonadPlus m, TransP t1, TransP t2) => MonadPlus (:. t2 t1 m) 