Module M.Fn

Various function combinators lifted into the Kleisli category.

val id : 'a -> 'a t

id x a monadic identity function

val ignore : 'a t -> unit t

ignore m computes m and discards the result.

val nothing : unit -> unit t

nothing is a computation that does nothing.

val non : ('a -> bool t) -> 'a -> bool t

non f returns a negation of the function f.

val apply_n_times : n:int -> ('a -> 'a t) -> 'a -> 'a t

apply_n_times ~n f creates a chaing of computation of size n made from applications of the same function to its own result.

val compose : ('b -> 'c t) -> ('a -> 'b t) -> 'a -> 'c t

compose f g creates a composition f.g of two function.