module IO: sig .. end
sig
end
include Deriving_monad.Monad
val putStr : string -> unit m
string -> unit m
val runIO : 'a m -> 'a
'a m -> 'a
val mkIO : (unit -> 'b) -> 'b m
(unit -> 'b) -> 'b m