Module type Deriving_monad.Monad module type Monad = sig..endtype +'a mval return : 'a -> 'a mval fail : string -> 'a mval (>>=) : 'a m -> ('a -> 'b m) -> 'b mval (>>) : 'a m -> 'b m -> 'b m