当前位置: 首页>>技术教程>>正文


linux – Ubuntu中的Prolog编程

, , ,

问题描述

我有兴趣使用序言进行演奏和融合,我已经安装了swi-prolog并添加了存储库,以防万一有人对我使用的哪个命令感兴趣:

% sudo apt-add-repository ppa:swi-prolog/stable
% sudo apt-get update
% sudo apt-get install swi-prolog

我实际上如何开始在Linux机器上编写prolog代码?对于我的常规编程,我使用VIM进行编写/编辑/调试,并使用终端进行编译。我可以用vim编写序言吗?我如何编译或使用序言解释器(我认为这就是所谓的)?

最佳答案

是的,您可以使用任何文本编辑器,包括。 VIM。编写Prolog源文件(例如file.pl)后,您可以像下面这样将其加载到SWI-Prolog中:

swipl -s file.pl

这将编译您的文件,并带您到交互式 shell ,然后您可以在其中对文件中的定义进行查询。

如果要以批处理方式使用Prolog程序,则可以使用:

swipl -s file.pl -t goal

其中goal是您要评估的目标/查询。请注意,在这种情况下,您将无法选择替代解决方案。

次佳答案

在Ubunutu上,我开始使用emacs,它至少会突出显示语法:

http://www.swi-prolog.org/FAQ/GnuEmacs.html

(该页面上的2条emacs建议^)

但是现在我很生气地使用了序言,我使用了一个名为PDT的Eclipse插件:

http://sewiki.iai.uni-bonn.de/research/pdt/docs/v2.1/start

逐行调试和跟踪real-time特别有用,因此您可以进入,遍历单个谓词,监视变量名称等。就像在Eclipse中可以找到的其他真实IDE一样。

也许只有在您要大量使用的情况下才值得安装,因为安装工作量很大,但这是一个很棒的IDE。

但是,如果您喜欢像VIM这样的低级编辑器,则必须使用swi-prolog内置的调试和跟踪工具,请参阅:

http://www.swi-prolog.org/pldoc/man?section=debugger

为了弄清奇怪而美丽的序言解释器是如何工作的,使用某种类型的跟踪器是must-have。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9091.html,未经允许,请勿转载。