18 lines
516 B
Plaintext
18 lines
516 B
Plaintext
sequence curries = {}
|
|
function create_curried(integer rid, sequence partial_args)
|
|
curries = append(curries,{rid,partial_args})
|
|
return length(curries) -- (return an integer id)
|
|
end function
|
|
|
|
function call_curried(integer id, sequence args)
|
|
{integer rid, sequence partial_args} = curries[id]
|
|
return call_func(rid,partial_args&args)
|
|
end function
|
|
|
|
function add(atom a, b)
|
|
return a+b
|
|
end function
|
|
|
|
integer curried = create_curried(routine_id("add"),{2})
|
|
printf(1,"2+5=%d\n",call_curried(curried,{5}))
|