alms-0.4.9: examples/ex07.alms
(* An Interface Intervenes *)
let ap : (int -> int) -> int -> int =
fun f: (int -> int) ->
fun x: int ->
f x
let iap = (ap :> (int -o int) -> int -o int)
let inc : int -> int =
fun y: int ->
(fun g: (int -o int) ->
iap g y)
(fun z: int -> z + 1)
in print[int] (inc 5)