This law is applyComposition stated in terms of pure
.
This law is applyComposition stated in terms of pure
. It is a
combination of applyComposition and applicativeMap and hence not
strictly necessary.
The composition of cats.data.Cokleisli
arrows is associative.
The composition of cats.data.Cokleisli
arrows is associative. This is
analogous to coflatMapAssociativity.
extract
is the left identity element under left-to-right composition of
cats.data.Cokleisli
arrows.
extract
is the left identity element under left-to-right composition of
cats.data.Cokleisli
arrows. This is analogous to comonadLeftIdentity.
extract
is the right identity element under left-to-right composition of
cats.data.Cokleisli
arrows.
extract
is the right identity element under left-to-right composition of
cats.data.Cokleisli
arrows. This is analogous to comonadRightIdentity.
It is possible to implement flatMap from tailRecM and map and it should agree with the flatMap implementation.
It is possible to implement flatMap from tailRecM and map and it should agree with the flatMap implementation.
The composition of cats.data.Kleisli
arrows is associative.
The composition of cats.data.Kleisli
arrows is associative. This is
analogous to flatMapAssociativity.
pure
is the left identity element under left-to-right composition of
cats.data.Kleisli
arrows.
pure
is the left identity element under left-to-right composition of
cats.data.Kleisli
arrows. This is analogous to monadLeftIdentity.
pure
is the right identity element under left-to-right composition of
cats.data.Kleisli
arrows.
pure
is the right identity element under left-to-right composition of
cats.data.Kleisli
arrows. This is analogous to monadRightIdentity.
Make sure that map and flatMap are consistent.
Make sure that map and flatMap are consistent.
Laws that must be obeyed by any
Bimonad
.For more information, see definition 4.1 from this paper: http://arxiv.org/pdf/0710.1163v3.pdf