这个问题涉及书中第3章的内容:Prolog,Clocksin和Mellish编程,Ed 5
在本书的第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).
Run Code Online (Sandbox Code Playgroud)
在许多在线教程中,使用了以下使用" - "的格式,例如::
append([ A , B , C | R1 ] – R1 , [ D , E | R2 ] – R2 , R3)
Run Code Online (Sandbox Code Playgroud)
我的问题是:
这两个表示之间有什么区别(使用 - 而不是使用它)
在哪些情况下最好使用它们中的每一种?
谢谢