2 exception At
of ((int * int) * exn
)
4 let ($
) f g
= function x
-> f
(g x
)
6 external identity
: 'a
-> 'a
= "%identity"
9 let tuck l x
= l
:= x
:: !l
10 let option_list = function Some x
-> [x
] | None
-> []
12 let fail fmt
= Printf.ksprintf failwith fmt
13 let failed ~at fmt
= Printf.ksprintf
(fun s
-> raise
(At
(at
, Failure s
))) fmt
14 let printfn fmt
= Printf.ksprintf print_endline fmt
15 let eprintfn fmt
= Printf.ksprintf prerr_endline fmt