module Monad:sig..end
t >>= 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.module type Basic =sig..end
module type Infix =sig..end
module type S =sig..end
module Make: