GapiMonad
Defines the monad interface and provides implementations of some monads.
module type Monad = sig ... end
module type MonadCombinators = sig ... end
module MakeMonadCombinators
(M : Monad) :
MonadCombinators with type 'a m = 'a M.t
module type StateMonad = sig ... end
module MakeStateMonad
(T : sig ... end) :
StateMonad with type 'a t = T.s -> 'a * T.s
module SessionM : sig ... end
module type ListMonad = sig ... end
module ListM : sig ... end