我不确定 flags 是否是合适的术语,但是是否有办法将 swi-prolog 程序配置为在完成查询时不输出 true 或 false,而是简单地打印出程序中确定的另一个语句?
有一个工具可以定制这种行为,但它可能会涉及很多。我自己没有使用过它,但是查看手册和 Prolog 启动文件可能会对您有所帮助。
Prolog 有一个“顶层”,它是一些 Prolog 代码,用于控制 Prolog 命令行并执行在其上输入的目标。使用 SWI-Prolog,您可以指定替代的顶级:
pl -t my_quiet_prolog
如果你定义my_quiet_prolog/0
在启动时加载的文件中,例如在你的~/.plrc
file.
默认的顶层称为prolog/0
。此部分的源代码以及默认 Prolog 环境的其他部分可以在以下位置找到:/usr/lib/pl-5.6.36/boot
(在我的 Cygwin 系统上;对您来说可能有所不同)。看着toplevel.pl
对于默认的顶层。消息“是”和“否”也被定义在messages.pl
.
您可以尝试覆盖这些消息,或者简单地复制顶层并修改它以适合您。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)