很好的IDE开始使用prolog

很好的IDE开始使用prolog,prolog,Prolog,我需要开始为我的工作学习Prolog 我以前没有使用过Prolog,我的公司需要构建一个使用Prolog的程序 因此,该程序将被商业化使用 所以有一些问题: 1) Prolog是否使用编译器编译程序。就像gcc对c做的那样 2) Prolog有商业标准吗?我只听说过SWI Prolog 3) 我已经在Linux上使用GNU Emacs很多年了。我正在考虑使用Prolog.el包?对此有何评论 非常感谢您的回答,您通常可以编译您的prolog项目。但是,根据您使用的prolog环境,它可能是一个中

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

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

因此,该程序将被商业化使用

所以有一些问题:

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

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

3) 我已经在Linux上使用GNU Emacs很多年了。我正在考虑使用Prolog.el包?对此有何评论


非常感谢您的回答,

您通常可以编译您的prolog项目。但是,根据您使用的prolog环境,它可能是一个中间代码,而不是直接可执行的代码。 SWI Prolog和Sicstus Prolog都允许生成这种形式的可执行文件(将解释器与编译的中间代码一起嵌入)。 其他序言(如arityprolog/32)直接编译为x86可执行文件。Wikipedia上有一个页面介绍了各种prolog系统


prolog有一个ISO标准。然而,几乎每一个prolog系统都将基本上彼此兼容,需要对代码从一个prolog系统移植到另一个prolog系统进行微小的更改。

除了gusbro已经说过的话之外:我认为SWI prolog是最好的学习prolog。它可能不是最快的实现,但它有很多优点,比如命令行编辑和内置的Emacs类编辑器,它是免费软件,很容易安装在Windows和Linux上(我想还有Mac OS X)。它是作为虚拟机的字节码编译器实现的,就像大多数序言一样;即使是那些产生本机代码的程序,在某些时候也经常使用虚拟机

Prolog的基本原理在不同的实现中基本相同;非标准扩展,如额外的库、操作系统接口、约束编程等,往往有点不同

存在各种Prolog Java和Prolog-C接口。SWI具有扩展功能,可以作为web服务器使用

  • 我所熟悉的最复杂的Prolog IDE是用于Amzi的基于Eclipse的IDE!序言。这是一个商业产品,但IDE可以下载并在学生版中免费使用。这可能是一个理想的开始Prolog程序员。免责声明:我可能有偏见,因为我在Amzi提供了很多免费建议我们的支持论坛。我认为有一个开源Eclipse插件也支持一些开源Prolog实现更新(2016年5月)Amzi!序言五。10现在正在使用类似麻省理工学院的许可证

  • 尽管SWI-Prolog是开源的(GPL),但是可以用它开发商业应用程序,就像GNU-Prolog和YAP等其他一些开源Prolog实现一样。除了阿姆齐!Prolog还有其他几种商业产品。Visual Prolog与Prolog的ISO标准不同,大多数Prolog程序员不认为它是“真正的Prolog”。SICStus Prolog是符合ISO标准的商业Prolog实现。还有一些类似于Prolog,但有大量扩展,如ECLiPSe(不要与IDE混淆)和Mercury。多年来,Prolog的许多商业实现已经过时,就好像Prolog被MINERVA取代一样。这是2006年的

  • 我认识许多程序员,他们高度评价GNU EMACS的Prolog模式。然而,我认为初学者将受益于集成的调试器/编辑器,比如Amzi!Prolog提供。SWI-Prolog有一个基于XPCE的图形化IDE,它是SWI-Prolog为跨平台开发选择的图形界面库。几乎所有的程序员编辑器都会为Prolog提供语法高亮显示,并安装正确的定义文件

  • 有一个。SICStus IDE具有许多在竞争产品中找不到的高级功能,无论是免费的还是商用的。除此之外,它还可以在您键入时检测语法错误和其他常见错误,这对初学者尤其有价值

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

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


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

    我使用swi Prolog内置IDE进行商业开发

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

    如果您习惯于在emacs环境中工作,您应该尝试使用Ciao发行版。它有许多有趣而强大的特性、库,也是GNULGPL许可证。高度文档化和支持。
    转到

    我正在使用名为的eclipse IDE插件。安装相当简单,我认为这是一个很好的环境。安装后,您可以按照“”处的说明完成安装并启动运行。

    我非常感兴趣。你的建筑是什么样的?您是从头开始构建所有东西,还是需要与现有代码接口?您好,问得好。我将从头开始构建一切,只是为了给它增加一些额外的乐趣。我将不得不与一些C共享库接口。因此,我必须注册一些回调,以便我的prolog应用程序可以从c库接收事件。所以我需要研究如何做到这一点。SWI-Prolog有几个C代码接口;其中有一个SICStus兼容层。@AndersonGreen:看起来你发布了一个来自谷歌搜索结果页面的链接,这可能不是你想要做的。还有一个Prolog IDE,名为。