module Monad_infix:Monad.Infixwith type 'a monad = 'a monad
type 'a monad
val (>>=) : 'a monad -> ('a -> 'b monad) -> 'b monadt >>= f returns a computation that sequences the computations
represented by two monad elements. The resulting computation first does
t to yield a value v, and then runs the computation returned by f v.val (>>|) : 'a monad -> ('a -> 'b) -> 'b monadt >>| f is t >>= (fun a -> return (f a)).