packages feed

alms-0.4.9: examples/ex04.alms

(* Ex04 Corrected *)

let ap : (int -o int) -> int -o int =
  fun f: (int -o int) ->
    fun x: int ->
      f x

let inc2 : int -> int =
  fun y: int ->
    let g = ap (fun z: int -> z + 1) in
    let h = ap (fun z: int -> z + 1) in
      h (g y)

in print[int] (inc2 5)