Portability | GADTs, MPTCs, fundeps |
---|---|

Stability | provisional |

Maintainer | Edward Kmett <ekmett@gmail.com> |

- type Yoneda = YonedaT Identity
- yoneda :: (b -> a) -> b -> Yoneda a
- liftYoneda :: a -> Yoneda a
- lowerYoneda :: Yoneda a -> a
- liftYonedaT :: f a -> YonedaT f a
- lowerYonedaT :: Functor f => YonedaT f a -> f a
- lowerM :: Monad f => YonedaT f a -> f a
- data YonedaT f a where

# Documentation

liftYoneda :: a -> Yoneda aSource

lowerYoneda :: Yoneda a -> aSource

liftYonedaT :: f a -> YonedaT f aSource

lowerYonedaT :: Functor f => YonedaT f a -> f aSource

The contravariant Yoneda lemma applied to a covariant functor

ComonadTrans YonedaT | |

MonadTrans YonedaT | |

Monad m => Monad (YonedaT m) | |

Functor (YonedaT f) | |

MonadFix f => MonadFix (YonedaT f) | |

MonadPlus f => MonadPlus (YonedaT f) | |

Applicative f => Applicative (YonedaT f) | |

(Foldable f, Functor f) => Foldable (YonedaT f) | |

Traversable f => Traversable (YonedaT f) | |

Alternative f => Alternative (YonedaT f) | |

Comonad w => Comonad (YonedaT w) | |

Extend w => Extend (YonedaT w) | |

Distributive f => Distributive (YonedaT f) | |

Plus f => Plus (YonedaT f) | |

Alt f => Alt (YonedaT f) | |

Adjunction f g => Adjunction (YonedaT f) (YonedaT g) | |

(Functor f, Eq (f a)) => Eq (YonedaT f a) | |

(Functor f, Ord (f a)) => Ord (YonedaT f a) | |

(Functor f, Read (f a)) => Read (YonedaT f a) | |

(Functor f, Show (f a)) => Show (YonedaT f a) |