Module Monad

module Monad: Monad

module type Basic = sig .. end
module type Infix = sig .. end
module type S = sig .. end
module Make (M : Basic) : sig .. end
module type Basic2 = sig .. end
Multi parameter monad.
module type Infix2 = sig .. end
Same as Infix, except the monad type has two arguments.
module type S2 = sig .. end
The same as S except the monad type has two arguments.
module Check_S2_refines_S (X : S) : sig .. end
module Make2 (M : Basic2) : sig .. end