我正在学习 prolog,我使用 swi-prolog 作为编译器/解释器。我有这个 hello world 文件:
:- initialization(main).
main :- format('Hello, world').
但是当我尝试编译swipl -o hello.exe -c hello.pro
并运行二进制文件hello.exe
时,它首先运行目标(main),然后将我返回到 swi-prolog 交互式环境。我如何编译它,使它成为一个没有 prolog 环境的功能程序?我也尝试halt
在 main 的末尾添加,但这根本无法编译。当我尝试这样做时,编译器会打印“Hello, world”,然后停止编译。