Alias for flatMap
Alias for flatMap
Runs a single step, using a function that extracts the resumption from its suspension functor.
Runs a single step, using a function that extracts the resumption from its suspension functor.
Runs a Source
all the way to the end, tail-recursively, collecting the produced values.
Runs a Source
all the way to the end, tail-recursively, collecting the produced values.
Feed the given source to this Sink
.
Feed the given source to this Sink
.
Drive this Source
with the given Sink.
Drive this Source
with the given Sink.
Duplication in Free
as a comonad in the endofunctor category.
Duplication in Free
as a comonad in the endofunctor category.
Extension in Free
as a comonad in the endofunctor category.
Extension in Free
as a comonad in the endofunctor category.
Extraction from Free
as a comonad in the endofunctor category.
Extraction from Free
as a comonad in the endofunctor category.
Feed the given stream to this Source
.
Feed the given stream to this Source
.
Binds the given continuation to the result of this computation.
Binds the given continuation to the result of this computation.
Substitutes a free monad over the given functor into the suspension functor of this program.
Substitutes a free monad over the given functor into the suspension functor of this program.
Free
is a monad in an endofunctor category and this is its monadic bind.
Catamorphism.
Catamorphism. Run the first given function if Return, otherwise, the second given function.
Catamorphism for Free
.
Catamorphism for Free
.
Runs to completion, mapping the suspension with the given transformation at each step and
accumulating into the monad M
.
Folds this free recursion to the right using the given natural transformations.
Folds this free recursion to the right using the given natural transformations.
Runs to completion, allowing the resumption function to thread an arbitrary state of type B
.
Runs to completion, allowing the resumption function to thread an arbitrary state of type B
.
Variant of foldRun
that allows to interleave effect M
at each step.
Variant of foldRun
that allows to interleave effect M
at each step.
Runs to completion, using a function that extracts the resumption from its suspension functor.
Runs to completion, using a function that extracts the resumption from its suspension functor.
Modifies the first suspension with the given natural transformation.
Modifies the first suspension with the given natural transformation.
Changes the suspension functor by the given natural transformation.
Changes the suspension functor by the given natural transformation.
Evaluates a single layer of the free monad *
Evaluates a single layer of the free monad *
Evaluates a single layer of the free monad *
Evaluates a single layer of the free monad *
Runs a trampoline all the way to the end, tail-recursively.
Runs a trampoline all the way to the end, tail-recursively.
Runs to completion, using a function that maps the resumption from S
to a monad M
.
Runs to completion, using a function that maps the resumption from S
to a monad M
.
7.0.1
Run Free using constant stack.
Run Free using constant stack.
Evaluate one layer in the free monad, re-associating any left-nested binds to the right and pulling the first suspension to the top.
Evaluate one layer in the free monad, re-associating any left-nested binds to the right and pulling the first suspension to the top.
Applies a function in a comonad to the corresponding value in this monad, annihilating both.
Applies a function in a comonad to the corresponding value in this monad, annihilating both.
Applies a function f
to a value in this monad and a corresponding value in the dual comonad, annihilating both.
Applies a function f
to a value in this monad and a corresponding value in the dual comonad, annihilating both.
Interleave this computation with another, combining the results with the given function.
Interleave this computation with another, combining the results with the given function.
A computation that produces values of type
A
, eventually resulting in a value of typeB
.