let ap : all 'a 'b. ('a -> 'b) -> 'a -> 'b = fun f x -> f x let inc y = ap ((+) 1) y in print (inc 5)