sig val ( |! ) : 'a -> ('a -> 'b) -> 'b val const : 'a -> 'b -> 'a val non : ('a -> bool) -> 'a -> bool val forever : (unit -> unit) -> exn external ident : 'a -> 'a = "%identity" end