val (>|=) : ('a, 'err) t-> ('a->'b) -> ('b, 'err) t
val (>>=) : ('a, 'err) t-> ('a-> ('b, 'err) t) -> ('b, 'err) t
Monadic composition. e >>= f proceeds as f x if e is Ok x or returns e if e is an Error.
val (<*>) : ('a->'b, 'err) t-> ('a, 'err) t-> ('b, 'err) t
a <*> b evaluates a and b, and, in case of success, returns Ok (a b). Otherwise, it fails, and the error of a is chosen over the error of b if both fail.