Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
A symmetric version of the Kleisli monad transformer arrow. BiKleisli provides this Kleisli-like arrow over bijections.
The Alimarine paper just calls it "MoT" for Monad Transformer.
- newtype MonadArrow a m b c = MonadArrow {
- runMonadArrow :: a (m b) (m c)
- type BiKleisli m a b = MonadArrow (<->) m a b
Documentation
newtype MonadArrow a m b c Source #
Bidirectional Kleisli
-like monad arrow transformer.
MonadArrow | |
|
Category * a => Category * (MonadArrow a m) Source # | |
Groupoid * a => Groupoid * (MonadArrow a m) Source # | |
Semigroupoid * a => Semigroupoid * (MonadArrow a m) Source # | |
Monad m => Arrow (MonadArrow (->) m) Source # | |
Monad m => Arrow (MonadArrow (<->) m) Source # | |
Monad m => ArrowChoice (MonadArrow (->) m) Source # | |
Monad m => ArrowChoice (MonadArrow (<->) m) Source # | |
MonadPlus m => ArrowZero (MonadArrow (->) m) Source # | |
MonadPlus m => ArrowZero (MonadArrow (<->) m) Source # | |
MonadPlus m => ArrowPlus (MonadArrow (->) m) Source # | |
MonadPlus m => ArrowPlus (MonadArrow (<->) m) Source # | |
Monad m => BiArrow' (MonadArrow (<->) m) Source # | |
(BiArrow a, Monad m) => BiArrow (MonadArrow a m) Source # | |
type BiKleisli m a b = MonadArrow (<->) m a b Source #
A MonadArrow over bijections.