【发布时间】:2020-12-17 09:20:12
【问题描述】:
Curry 与它的表亲 Haskell 不同,它允许您为函数赋予多个值:
foo 1 2 = 3
foo 1 2 = 4
它通过backtracking(或其他一些搜索)来探索这种不确定性的含义。
这使得它类似于 Prolog(尤其是 λProlog,由于类型系统和语法),您可以改为声明
foo 1 2 3.
foo 1 2 4.
在语义上,N-ary Curry 函数和 N+1-ary Prolog 关系之间有什么区别吗?
【问题讨论】:
标签: functional-programming prolog logic-programming curry lambda-prolog