Sourceval (>|=) : 'a t -> ('a -> 'b) -> 'b t Sourceval (>>=) : 'a t -> ('a -> 'b t) -> 'b t o >>= f is the monadic bind.
Sourceval (<*>) : ('a -> 'b) t -> 'a t -> 'b t f <*> o returns Some (f x) if o is Some x and None if o is None.
Sourceval (<$>) : ('a -> 'b) -> 'a t -> 'b t o1 <+> o2 is o1 if o1 is Some _, o2 if o1 is None.
Let operators on OCaml >= 4.08.0, nothing otherwise
Sourceval (let+) : 'a t -> ('a -> 'b) -> 'b t Sourceval (and+) : 'a t -> 'b t -> ('a * 'b) t Sourceval (let*) : 'a t -> ('a -> 'b t) -> 'b t Sourceval (and*) : 'a t -> 'b t -> ('a * 'b) t