 | category-extras-0.53.6: Various modules and constructs inspired by category theory | Contents | Index |
|
| Control.Functor.Extras | | Portability | non-portable (rank-2 polymorphism) | | Stability | experimental | | Maintainer | Edward Kmett <ekmett@gmail.com> |
|
|
|
| Description |
|
|
| Synopsis |
|
|
|
| Documentation |
|
| type Dist f g = forall a. f (g a) -> g (f a) |
|
| type :~> f g = forall a. f a -> g a |
| A natural transformation between functors f and g.
|
|
| type Natural f g = f :~> g |
|
| type :~~> f g = forall a b. f a b -> g a b |
| A transformation natural in both sides of a bifunctor.
|
|
| type Dinatural f g = forall a. f a a -> g a a |
| Dinatural transformations
|
|
| class PostFold m f where |
| | Methods | | postFold :: f (m (f a)) -> m (f a) |
|
|
|
| class PostUnfold w f where |
| | Methods | | postUnfold :: w (f a) -> f (w (f a)) |
|
|
|
| class PreFold f m where |
| | Methods | | preFold :: f (m (f a)) -> f (m a) |
|
|
|
| class PreUnfold f w where |
| | Methods | | preUnfold :: f (w a) -> f (w (f a)) |
|
|
|
| class Distributes f g where |
| | Methods | | dist :: f (g a) -> g (f a) |
|
|
|
| class Functor f => FunctorZero f where |
|
|
| class FunctorZero f => FunctorPlus f where |
| | Methods | | fplus :: f a -> f a -> f a |
|
|
|
| class Functor f => FunctorSplit f where |
| | Methods | | fsplit :: f a -> (f a, f a) |
| | Instances | |
|
|
| Produced by Haddock version 2.1.0 |