S.Syntax
Monadic operators, see Monad.Syntax.S for more.
val (>>=) : 'a t -> ( 'a -> 'b t ) -> 'b t
m >>= f is bind m f
m >>= f
bind m f
val (>>|) : 'a t -> ( 'a -> 'b ) -> 'b t
m >>= f is map m ~f
map m ~f
val (>=>) : ( 'a -> 'b t ) -> ( 'b -> 'c t ) -> 'a -> 'c t
f >=> g is fun x -> f x >>= g
f >=> g
fun x -> f x >>= g
val (!!) : 'a -> 'a t
!!x is return x
!!x
return x
val (!$) : ( 'a -> 'b ) -> 'a t -> 'b t
!$f is Lift.unary f
!$f
Lift.unary f
val (!$$) : ( 'a -> 'b -> 'c ) -> 'a t -> 'b t -> 'c t
!$$f is Lift.binary f
!$$f
Lift.binary f
val (!$$$) : ( 'a -> 'b -> 'c -> 'd ) -> 'a t -> 'b t -> 'c t -> 'd t
!$$$f is Lift.ternary f
!$$$f
Lift.ternary f
val (!$$$$) : ( 'a -> 'b -> 'c -> 'd -> 'e ) -> 'a t -> 'b t -> 'c t -> 'd t -> 'e t
!$$$$f is Lift.quaternary f
!$$$$f
Lift.quaternary f
val (!$$$$$) : ( 'a -> 'b -> 'c -> 'd -> 'e -> 'f ) -> 'a t -> 'b t -> 'c t -> 'd t -> 'e t -> 'f t
!$$$$$f is Lift.quinary f
!$$$$$f
Lift.quinary f