category-extras-0.53.6: Various modules and constructs inspired by category theoryContentsIndex
Control.Comonad.Coideal
Portabilityportable
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>
Contents
Coideal Comonads
Mutual recursion for (co)ideal (co)monad (co)products
Coideal Comonad Product
Description
Synopsis
class Functor w => ComonadCoideal w where
coidealize :: w a -> w (a, w a)
type Coideal = Ap (,)
coideal :: (a, f a) -> Coideal f a
buildCoideal :: Coalgebra m a -> a -> Coideal m a
newtype Mutual p m n a = Mutual {
runMutual :: m (p a (Mutual p n m a))
}
type :* m n = Mutual' (,) m n
Coideal Comonads
class Functor w => ComonadCoideal w where
Methods
coidealize :: w a -> w (a, w a)
type Coideal = Ap (,)
coideal :: (a, f a) -> Coideal f a
buildCoideal :: Coalgebra m a -> a -> Coideal m a
Mutual recursion for (co)ideal (co)monad (co)products
newtype Mutual p m n a
Constructors
Mutual
runMutual :: m (p a (Mutual p n m a))
show/hide Instances
(Bifunctor p Hask Hask Hask, Functor m, Functor n) => Functor (Mutual p m n)
Coideal Comonad Product
type :* m n = Mutual' (,) m n
Produced by Haddock version 2.1.0