Behaviours: do_applicative, do_functor, do_monad.
either(A, B) = {error, A} | {ok, B}
fn(A, B) = fun((A) -> B)
fn(A) = fun(() -> A)
map(A) = #{term() := A}
maybe(A) = {just, A} | nothing
monad(A) = [A] | either(term(), A) | maybe(A)
traversable(A) = [A] | map(A)
bind/2 | |
do/2 | |
fmap/2 | |
lift/1 | |
liftA2/2 | |
liftm/2 | |
liftmz/2 | |
pure/1 | |
sequence/1 | |
then/2 |
pure(B) -> either(term(), B)
sequence(Eithers::traversable(either(A, B))) -> either(A, traversable(B))
Generated by EDoc