1
在線學習練習/教程之後,在運行我的簡單Prolog程序時遇到以下錯誤。在Prolog中反轉列表時發生運行時錯誤
testReverse :-
transImage(reserseList,'imageIN.pgm','imageOUT.pgm').
transImage(R,In,Out) :-
read_pgm(In,PGM),
transf_pgm(R,PGM,PGM2),
write_pgm(Out,PGM2).
transf_pgm(R, pgm(A,B,H,W,M,L), pgm(A,B,H,W,M,L2)) :-
Term =.. [R,L,L2],
call(Term).
reserseList([],[]).
reserseList([X|R],Reversed):-
reserseList(R, RevList),
append(RevList,[X],Reversed).
和運行時錯誤時獲得的SWI-Prolog是
10 ?- testReverse
| .
ERROR: read_pgm/2: Undefined procedure: fread/4
ERROR: However, there are definitions for:
ERROR: read/1
ERROR: read/2
任何想法,爲什麼?對於prolog來說,這是非常新的,從網上教程的字面意思是2天,所以請提前接受我的道歉。如果我向您提供有關您的答案的進一步問題。謝謝。