RosettaCodeData/Task/Currying/Lua/currying-1.lua

18 lines
269 B
Lua

function curry2(f)
return function(x)
return function(y)
return f(x,y)
end
end
end
function add(x,y)
return x+y
end
local adder = curry2(add)
assert(adder(3)(4) == 3+4)
local add2 = adder(2)
assert(add2(3) == 2+3)
assert(add2(5) == 2+5)