Preface_specs.Indexed_monad_plus
Indexed Monad_plus
is a kind of Monoid
on Indexed_monad
. A Indexed_monad_plus
is formally a Indexed_monad
with neutral and combine
. So a Indexed_monad_plus
is also a Indexed_monad
.
module type WITH_NEUTRAL_AND_COMBINE = sig ... end
Minimal interfaces of Indexed Alternative
without Indexed_monad
.
module type WITH_MAP_AND_JOIN = sig ... end
Minimal definition using neutral
, combine
, return
, map
and join
.
module type WITH_KLEISLI_COMPOSITION = sig ... end
Minimal definition using neutral
, combine
, return
, compose_left_to_right
.
module type WITH_BIND = sig ... end
Minimal definition using neutral
, combine
, return
, bind
.
module type CORE = sig ... end
Basis operations.
module type OPERATION = sig ... end
Additional operations.
module type INFIX = sig ... end
Infix operators.
module type SYNTAX = sig ... end
Syntax extensions
module type API = sig ... end
The complete interface of an Indexed_monad_plus
.