开始使用prolog的好IDE

时间:2011-03-11 19:10:24

标签: prolog

我需要开始为我的工作学习Prolog。

我之前没有使用过Prolog,我的公司需要构建一个使用Prolog的程序。

因此该程序将在商业上使用。

所以有些问题:

1)Prolog是否使用编译器来编译程序。就像gcc为c做的那样?

2)Prolog有商业标准吗?我只听说过SWI Prolog。

3)我多年来一直在使用GNU Emacs和Linux。我在考虑使用Prolog.el包吗?对此有何评论?

非常感谢任何答案,

7 个答案:

答案 0 :(得分:11)

  1. 我熟悉的最精心设计的Prolog IDE是基于Eclipse的Amzi IDE!序言。这是一个商业产品,但IDE可以在学生版中免费下载和使用。它可能是一个初学Prolog程序员的理想选择。免责声明:我可能有偏见,因为我在Amzi!的支持论坛上提供了大量免费建议。我认为有一个开源的Eclipse插件,它也支持一些开源的Prolog实现。 更新(2016年5月)Amzi! Prolog v.10现在become open source使用类似MIT的许可证。

  2. 虽然SWI-Prolog是开源的(GPL),但它可以用它开发商业应用程序,就像其他几个开源的Prolog实现一样,如GNU Prolog和YAP。除了Amzi! Prolog还有其他几种商业产品。 Visual Prolog与Prolog的ISO标准不同,大多数Prolog程序员都不认为它是“真正的prolog”。 SICStus Prolog是符合ISO标准的商业Prolog实现。还有一些其他类似Prolog的但有大量扩展,例如ECLiPSe(不要与IDE混淆)和Mercury。多年来,Prolog的许多商业实施已经过时,因为IF Prolog被MINERVA取代。这是2006年的 a list of implementations

  3. 我认识很多程序员,他们高度评价GNU EMACS的Prolog模式。但是我认为初学者会从像Amzi这样的集成调试器/编辑器中受益! Prolog提供。 SWI-Prolog正在构建一个基于XPCE的图形化IDE,这是SWI-Prolog选择用于跨平台开发的图形界面库。几乎所有程序员编辑都会为Prolog提供语法高亮,并安装了正确的定义文件。

答案 1 :(得分:4)

SICStus Prolog有一个IDE based on Eclipse。 SICStus IDE具有许多竞争产品中没有的高级功能,免费或商业。除此之外,它还会在您键入时检测语法错误和其他常见错误,这对于初学者来说尤为重要。

SICStus也有Emacs模式,但它不提供基于Eclipse的IDE的所有功能。

您可以从home page下载对SICStus Prolog的评估。

我有偏见,我是SICStus Prolog开发人员之一,也是SICStus Prolog IDE的开发人员。

答案 2 :(得分:3)

您通常可以编译您的prolog项目。但是,根据您使用的prolog环境,它可能是中间代码而不是直接可执行代码。 SWI Prolog和Sicstus prolog都允许生成此表单的可执行文件(将解释器与您编译的中间代码一起嵌入)。 Arity Prolog / 32等其他序言直接编译为x86可执行文件。维基百科上有一个页面compares各种prolog系统。

prolog有ISO标准。但是,几乎每个prolog系统都会相互兼容,需要进行微小的更改才能将代码从一个prolog系统移植到另一个prolog系统。

答案 3 :(得分:3)

除了gusbro已经说过的内容:我认为SWI-Prolog是最好的学习方法。它可能不是最快的实现,但它有相当多的铃声和口令编辑和内置的类似Emacs的编辑器,它是免费的软件,它很容易在Windows和Linux上安装(我估计也是Mac OS X)。它被实现为虚拟机的字节码编译器,就像大多数Prolog一样;即使是生成本机代码的代码,通常也会在某些时候使用虚拟机。

Prolog的基础知识在实现中大致相同;非标准扩展,如额外的库,OS接口,约束编程等,往往会有所不同。

存在各种Prolog-Java和Prolog-C#接口接口。 SWI具有允许其用作Web服务器的扩展。

答案 4 :(得分:2)

我正在使用内置的swi-prolog进行商业开发。

根据您的操作系统,您可能需要从swipl-win.exe或xpce开始 获得图形环境

答案 5 :(得分:2)

我正在使用名为PDT的eclipse IDE插件。安装相当容易,我认为这是一个很好的环境。安装完成后,您可以按照" getting started page"完成安装并让您开始运行。

答案 6 :(得分:0)

如果您习惯在emacs环境中工作,则应尝试使用Ciao发行版。它有许多有趣和强大的功能,库,也是GNU LGPL许可证。高度记录和支持。 转到http://ciaohome.org/

相关问题