procedure main(A) write(A[1],": ",curry(A[1],A[2:0])) end procedure curry(f,A) r := A[1] every r := f(r, !A[2:0]) return r end