Dan*_*iro 7 list prolog difference-lists
我一直在阅读有多大的差异列表,我希望从书中测试一些例子.但似乎你不能以与插入([1,2,3],[4,5],X)相同的方式传递列表作为输入,其中X = [1,2,3, 4,5].奇怪的是,我咨询过的任何一本书都没有提到这一点.
我在swipl上运行代码,我有兴趣测试差异追加谓词:
dapp(A-B,B-C,A-C).
Run Code Online (Sandbox Code Playgroud)
和"旋转列表的第一个元素"谓词:
drotate([H|T]-T1,R-S) :- dapp(T-T1,[H|L]-L,R-S).
Run Code Online (Sandbox Code Playgroud)
任何想法,我如何在swipl中测试这些谓词?
尝试:
dapp([1,2,3|X] - X,[4,5,6] - [],Y - []).
drotate([1,2,3|X] - X,Y - []).
Run Code Online (Sandbox Code Playgroud)
Y是两个谓词的答案.