cats.free.Inject[F, G]
cats.free.Inject[F, G]
The dual view of the Yoneda lemma.
The dual view of the Yoneda lemma. Also a free functor on F
.
This is isomorphic to F
as long as F
itself is a functor.
The homomorphism from F[A]
to Coyoneda[F,A]
exists even when
F
is not a functor.
A free operational monad for some functor S
.
A free operational monad for some functor S
. Binding is done
using the heap instead of the stack, allowing tail-call
elimination.
Applicative Functor for Free
Invariant Monoidal for Free
FreeT is a monad transformer for Free monads over a Functor S
FreeT is a monad transformer for Free monads over a Functor S
Stack safety for Free
and FreeT
is based on the paper
Stack Safety for Free by Phil Freeman
This Scala implementation of FreeT
and its usages are derived from
Scalaz's FreeT,
originally written by Brian McKenna.
Inject type class as described in "Data types a la carte" (Swierstra 2008).
Inject type class as described in "Data types a la carte" (Swierstra 2008).
Alias for the free monad over the Function0
functor.
The free functor generated by F
.
The free functor generated by F
. The Yoneda lemma says that
Yoneda[F,A]
is isomorphic to F[A]
for any functor F
.
The homomorphism from Yoneda[F,A]
to F[A]
exists even when
we have forgotten that F
is a functor.
Can be seen as a partially applied map
for the functor F
.