sig type +'a t val return : 'a -> 'a CCCat.MONAD_BARE.t val ( >>= ) : 'a CCCat.MONAD_BARE.t -> ('a -> 'b CCCat.MONAD_BARE.t) -> 'b CCCat.MONAD_BARE.t end