我正在尝试使用Prolog,但我无法编译第一个示例。我试图以交互方式输入它,并从文件加载。
cat factorial.pl
factorial(0,1).
factorial(N,F) :-
N>0,
N1 is N-1,
factorial(N1,F1),
F is N * F1.
| ?- ['factorial.pl'].
compiling /tmp/factorial.pl for byte code...
/tmp/factorial.pl compiled, 7 lines read - 813 bytes written, 2 ms
yes
| ?- factorial(4,X).
uncaught exception: error(existence_error(procedure,factorial/0),factorial/0)
编辑:我在GNU prolog中遇到了上述问题。 SWI prolog工作正常。