这个问题涉及书籍《Prolog程序设计》第三章的内容,作者是Clocksin和Mellish,第五版。
在该书第72页展示了一个使用差分列表的程序:
在许多在线教程中,使用“-”的以下格式被广泛采用,例如:
在该书第72页展示了一个使用差分列表的程序:
partsOf(X,P):- partsacc(X,P,Hole) , Hole=[].
partsacc(X,[X|Hole],Hole):-basicpart(X).
partsacc(X,P,Hole):- assembly(X,Subparts), partsacclist(Subparts, P, Hole).
partsacclist([],Hole,Hole).
partsacclist([P|T], Total, Hole):- partsacc(P,Total,Hole1), partsacclist(T,Hole1,Hole).
在许多在线教程中,使用“-”的以下格式被广泛采用,例如:
append([ A , B , C | R1 ] – R1 , [ D , E | R2 ] – R2 , R3)
我的问题是:
使用“-”和不使用它这两种表示方式有什么区别?
在哪些情况下最好使用每种表示方式?
谢谢