pub trait Monad<'a, A>: Bind<'a, A> + Applicative<'a, A> { }
Expand description
A Monad
is like a burrito, and also anything which implements
Bind
and Applicative
.
A monad’s primary function is to provide the Bind
trait, but to
count as a monad a type must also implement Applicative
,
which in turn requires you to implement Functor
,
Pure
and Apply
.