什么更有趣或更强大:咖喱,水星还是Lambda-Prolog?

Bub*_*a88 19 logic prolog logic-programming mercury curry

我想问一下从头开始/逆向工程师实施什么样的正式系统会更有趣.

我查看了一些逻辑/声明性编程系统的现有和开源项目.我决定在空闲时间编写类似的内容,或者至少要了解实现的一般概念.

如果这些系统中的一些能够提供逻辑中现代学术研究的大部分表达能力和简洁性以及它与计算模型的关系,那将是很好的.

你建议至少在概念层面学习什么?例如,Lambda-Prolog很有意思,因为它允许更高阶的关系,但AFAIK基于直觉主义逻辑,因此缺乏排除中间原则; 这通常对我不利.

我也欢迎任何有关现代逻辑编程系统的建议,这些系统不太受欢迎,但更具表现力/强大功能.

ony*_*ony 16

Prolog是第一种改变我对编程观点的语言.但后来我发现它不是那么高级,我想看到它.

库里 - 我只尝试过Munster CC,发现它有点不方便.实际上,在这一点上,我决定不再忽视Haskell.

水星有许多我想在Prolog中看到的东西.我对区分规则模式的可能性抱有很好的期望.用Mercury编写的程序应该激发编译器做很多优化(我猜).

  • Prolog非常吸引人.但更重要的是,它究竟是多么"简单". (4认同)

RD1*_*RD1 9

Twelf.

它显着地概括了lambda-prolog,它是一个逻辑框架和金属框架以及逻辑编程语言.如果你需要一种重点关注逻辑和计算的语言,那就是我所知道的最好的语言.

  • 自 2013 年以来,Twelf 没有任何更新。你知道它是否仍然是一个活跃的项目吗? (2认同)