【发布时间】:2015-04-17 07:08:28
【问题描述】:
在 TurboProlog 中我们可以使用下一个构造:
goal:
father('Tom', X).
如何在 SWI-Prolog 中使用相同的?
【问题讨论】:
-
Turbo Prolog 在这里很特别。大多数其他系统都将
initialization/1作为指令。
标签: prolog
在 TurboProlog 中我们可以使用下一个构造:
goal:
father('Tom', X).
如何在 SWI-Prolog 中使用相同的?
【问题讨论】:
initialization/1 作为指令。
标签: prolog
如果我记得 goal 做了什么,我建议使用内置的 ISO-Prolog initialization/1:
加载该指令所在的源文件后调用Goal已经完成。
:- initialization((father('Tom', X), writeln(X))).
我添加了获得值的可视化 - 如果有的话。还应该添加一些错误处理...
【讨论】:
我们如何调用 2 个或多个 Goal?
下一个代码调用错误:
:- initialization(
(grandmother('Sarah', X), writeln(X)),
(father('Tom', Y), writeln(Y))
).
【讨论】:
:- initialization(A,B). 尝试使用:- initialization((A,B)).。或者,您可能想要给出几个initialization 指令 - 请记住它们的执行顺序是“实现定义的”。 IE。查看你的实现在上面说了什么。