咖喱

返回部分应用的函数。

> ((curry + 10) 20)
30

当需要在最后插入参数时,可以使用 curryr。换句话说,(curryr list 1 2) 将产生一个期望一些 new-arguments ... 的功能。当被调用时,该新功能将依次调用 (list new-arguments ... 1 2)

> (((curryr list) 1 2) 3 4)
'(3 4 1 2)
> ((curryr list 1 2) 3 4)
'(3 4 1 2) 
> ((curryr - 30) 40)
10
> (((curryr -) 30 40))
10