Hello World
Hello,World in the interactive interpreter
打印 Hello World! 在 Prolog 解释器中(这里我们使用 swipl,SWI Prolog 的 shell):
$ swipl
<...banner...>
?- write('Hello, World!'), nl.
?- 是系统提示符:它表示系统已准备好供用户输入必须以 .(句号)终止的目标序列 (即查询 )。
这里查询 write('Hello World!'), nl 有两个目标:
write('Hello World!'):'Hello World!'必须显示和 (,)- 必须遵循一条新线(
nl)。
write/1 (/1 用于表示谓词采用一个参数), nl/0 是内置谓词 (该定义由 Prolog 系统预先提供)。内置谓词提供了纯 Prolog 定义无法获得的功能,或者使程序员无需定义它们。
输出:
Hello World!
是
以 yes 结尾意味着查询已成功。在某些系统中,打印 true 而不是 yes。
你好,来自一个文件的世界
打开一个名为 hello_world.pl 的新文件并插入以下文本:
:- initialization hello_world, halt.
hello_world :-
write('Hello, World!'), nl.
initialization 指令指定在加载文件时应调用目标 hello_world, halt。halt 退出该计划。
然后,你的 Prolog 可执行文件可以执行此文件。确切的标志取决于 Prolog 系统。如果你正在使用 SWI Prolog:
$ swipl -q -l hello_world.pl
这将产生输出 Hello, World!。-q 标志会抑制通常在运行 swipl 时显示的横幅。-l 指定要加载的文件。