Cascade-0.1.0.0: Playing with reified categorical composition
Cascade.Sum
data SumW w ts where Source
Constructors
Instances
type family SumW' w ts Source
Equations
toEither :: SumW w as -> SumW' w as Source
type Sum = SumW Identity Source
here :: a -> Sum (a : as) Source
there :: Sum as -> Sum (a : as) Source
type family TailSumsW w ts :: [*] Source
type TailSums ts = TailSumsW Identity ts Source
pops :: Monad m => (w x -> m (w y)) -> SumW w (x : (y : zs)) -> m (SumW w (y : zs)) Source
resumeC :: Monad m => (forall a b. c a b -> w a -> m (w b)) -> CascadeC c ts -> CascadeM m (TailSumsW w ts) Source
resumeM :: Monad m => CascadeM m ts -> CascadeM m (TailSums ts) Source
resumeW :: Comonad w => CascadeW w ts -> Cascade (TailSumsW w ts) Source
resume :: Cascade ts -> Cascade (TailSums ts) Source