val (>>=) : 'a t -> ('a -> 'b t) -> 'b tval (>|=) : 'a t -> ('a -> 'b) -> 'b tval (<*>) : ('a -> 'b) t -> 'a t -> 'b tval (>>-) : 'a t -> ('a -> 'b t) -> 'b tval (<.>) : ('a -> 'b) t -> 'a t -> 'b tval (--) : int -> int -> int tval (--^) : int -> int -> int t