在序言中拉伸列表

stretching a list in prolog

我希望能够转

这个: [[[a],b],c]

进入这个: [a,b,c]

列表不断变化,到目前为止我已经这样做了:

a([[[A],B],C]).
strechList(List,C):-
    List=[H,T],
    append(T,List1,C),
    strechList(H,List1).
strechList(A,A).

但是没用。

那个谓词叫做'flatten'。如果您使用 SWI-Prolog,它是内置的。 还要检查 this 答案。