Prolog helloWorld无法正常工作

时间:2014-04-22 22:25:02

标签: prolog

愚蠢的问题,但我试图让这个简单的Prolog程序正常工作。我写了其他小的Prolog程序没有问题,但是这个给我带来了麻烦:

test :- write 'test1234 test1234',nl,halt.

那就是它。该文件保存为adventure1.pl。它使用命令行选项加载到Ubuntu上的SWI-Prolog:

prolog -s adventure1.pl

当加载到Prolog解释器中时,我输入以下内容:

start.

然而,Prolog说undefined procedure: test/0 (DWIM could not correct goal)。这里的错误是什么,它真的很简单。我写这个是因为我有一些示例程序使用名为start的预定义来显示文本,但我甚至无法使其工作。

1 个答案:

答案 0 :(得分:4)

write 'test1234 test1234'

是语法错误,因为SWI-Prolog清楚地表明:

ERROR: /tmp/adventure1.pl:2:10: Syntax error: Operator expected

应该是

write('test1234 test1234')

(当然,这不会解决 start 不能正常工作的问题,因为你已经定义了 test 。)