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
指定要載入的檔案。