Portability | non-portable |
---|---|
Stability | experimental |
Maintainer | sjoerd@w3future.com |
This is an attempt at the Kleisli category, and the construction of an adjunction for each monad.
Documentation
data KleisliAdjF (~>) m whereSource
KleisliAdjF :: (Category ~>, Monad m, Dom m ~ ~>, Cod m ~ ~>) => m -> KleisliAdjF ~> m |
Functor (KleisliAdjF ~> m) |
data KleisliAdjG (~>) m whereSource
KleisliAdjG :: (Category ~>, Monad m, Dom m ~ ~>, Cod m ~ ~>) => m -> KleisliAdjG ~> m |
Functor (KleisliAdjG ~> m) |
kleisliAdj :: (Monad m, Dom m ~ ~>, Cod m ~ ~>, Category ~>) => m -> Adjunction (Kleisli ~> m) ~> (KleisliAdjF ~> m) (KleisliAdjG ~> m)Source