我搜索了互联网和stackoverflow.com,但什么都没有。
谁可以让我对各种Prolog编译器/ IDE(例如Visual Prolog和SWI-Prolog)进行比较?
提前致谢!
答案 0 :(得分:11)
如果你从SWI-Prolog开始,那就很难出错。虽然它比这里讨论的大多数替代方案慢,但它非常强大,具有广泛的库支持,具有良好的GUI构建系统(XPCE),并且使用允许其在专有应用程序中使用的许可证。
为了提高速度,将大多数非GUI SWI-Prolog应用程序转换为在YAP Prolog下运行是一件简单的事情。
答案 1 :(得分:5)
如果速度是最重要的方面,你应该考虑GNU-Prolog。我最近开发使用Amzi! Prolog及其Eclipse IDE(不要与ECLiPSe编程语言混淆)。调试完成后,我将注意力转向了时间安排。移植到SWI-Prolog和GNU-Prolog在Windows和Linux上相当简单,因为那时代码是相当标准的“ISO”Prolog。我的时间显示了Amzi!和SWI的速度相当,GNU-Prolog明显更快。
事实证明,代码花费了大部分时间在一个非常数字的部分。虽然Amzi!和SWI都以任意精度实现精确的整数运算,结果我的要求只是在32位GNU-Prolog的整数限制范围内。
此外,GNU-Prolog很容易链接到C中那个关键部分的重写。混合代码就是我在制作中使用的。
答案 2 :(得分:3)
通过查看this comparison of Prolog implementations,您可能会有一个良好的开端。由于您还没有明确指出您的目标是什么,您要定位的平台,您的要求是什么,您的体验是什么等等,因此我所提供的信息并不多。
已编辑添加:
维基百科有good comparison chart个Prolog实现。这应该有助于您的决策过程。
答案 3 :(得分:1)
这里有一个基于性能的规则引擎分析: http://sunysb.academia.edu/PaulFodor/Papers/349245/Openrulebench_An_Analysis_of_the_Performance_of_Rule_Engines
在很多测试中,YAP似乎总体上更快,但XSB一点也不差。如果您正在寻找语言间通信(使用Java,C或其他),数据库访问或制表(这些是我的要求),XSB拥有大量复杂的库。 但是,我发现YAP更容易使用(直到现在,我才开始给XSB一个机会:)。
答案 4 :(得分:1)
我推荐Amzil Prolog,因为它是GREAT Eclipse IDE插件。你会在这里找到它:Official Site。