Module

SSRS.Refold

Package
purescript-ssrs
Repository
PureFunctor/purescript-ssrs

#unsafeHylo Source

unsafeHylo :: forall p q v w. (p (Mu p) -> Result p q v (Mu p)) -> (q v (Mu p) -> v -> Result p q v (Mu p)) -> Algebra p v -> Coalgebra p w -> w -> v

#hylo Source

hylo :: forall p q v w. Dissect p q => Algebra p v -> Coalgebra p w -> w -> v

#hyloM Source

hyloM :: forall m p q v w. MonadRec m => Dissect p q => AlgebraM m p v -> CoalgebraM m p w -> w -> m v

#transHylo Source

transHylo :: forall p p' q q' r r'. Dissect p p' => Dissect q q' => Dissect r r' => Transform (Mu q) r q -> Transform (Mu p) p r -> Mu p -> Mu q

#transHyloM Source

transHyloM :: forall m p p' q q' r r'. MonadRec m => Coercible (m (q (Mu q))) (m (Mu q)) => Dissect p p' => Dissect q q' => Dissect r r' => TransformM m (Mu q) r q -> TransformM m (Mu p) p r -> Mu p -> m (Mu q)

#dyna Source

dyna :: forall p q v w. Dissect p q => GAlgebra (Cofree p) p w -> Coalgebra p v -> v -> w

#dynaM Source

dynaM :: forall m p q v w. MonadRec m => Dissect p q => GAlgebraM (Cofree p) m p w -> CoalgebraM m p v -> v -> m w

#codyna Source

codyna :: forall p q v w. Dissect p q => Algebra p w -> GCoalgebra (Free p) p v -> v -> w

#codynaM Source

codynaM :: forall m p q v w. MonadRec m => Dissect p q => AlgebraM m p w -> GCoalgebraM (Free p) m p v -> v -> m w

#chrono Source

chrono :: forall p q v w. Dissect p q => GAlgebra (Cofree p) p w -> GCoalgebra (Free p) p v -> v -> w

#chronoM Source

chronoM :: forall m p q v w. MonadRec m => Dissect p q => GAlgebraM (Cofree p) m p w -> GCoalgebraM (Free p) m p v -> v -> m w