module Identity: sig .. end
sig
end
type 'a m = 'a
'a
val return : 'a -> 'a m
'a -> 'a m
val bind : ('a -> 'b) -> 'a -> 'b
('a -> 'b) -> 'a -> 'b
val bind_rev : 'a -> ('a -> 'b) -> 'b
'a -> ('a -> 'b) -> 'b
val error : exn -> 'a
exn -> 'a
val catch : (unit -> 'a) -> (exn -> 'a) -> 'a
(unit -> 'a) -> (exn -> 'a) -> 'a