Safe Haskell | Safe |
---|---|
Language | Haskell98 |
- type (:->) p q = forall a b. p a b -> q a b
- class BifunctorFunctor t where
- class BifunctorFunctor t => BifunctorMonad t where
- biliftM :: BifunctorMonad t => (p :-> q) -> t p :-> t q
- class BifunctorFunctor t => BifunctorComonad t where
- biliftW :: BifunctorComonad t => (p :-> q) -> t p :-> t q
Documentation
type (:->) p q = forall a b. p a b -> q a b infixr 0 Source
Using parametricity as an approximation of a natural transformation in two arguments.
class BifunctorFunctor t where Source
BifunctorFunctor k k k k (Flip k k) Source | |
BifunctorFunctor k k k k (Sum k k p) Source | |
BifunctorFunctor k k k k (Product k k p) Source | |
Functor f => BifunctorFunctor k k k k (Tannen * k k f) Source |
class BifunctorFunctor t => BifunctorMonad t where Source
BifunctorMonad k k (Sum k k p) Source | |
(Functor f, Monad f) => BifunctorMonad k k (Tannen * k k f) Source |
biliftM :: BifunctorMonad t => (p :-> q) -> t p :-> t q Source
class BifunctorFunctor t => BifunctorComonad t where Source
biextract, (biextend | biduplicate)
BifunctorComonad k k (Product k k p) Source | |
Comonad f => BifunctorComonad k k (Tannen * k k f) Source |
biliftW :: BifunctorComonad t => (p :-> q) -> t p :-> t q Source