Mar 12, 2002 #1 ting138 MIS Mar 12, 2002 2 GB I have a list [a,b,[c,d,[s,d],[c,d]]] how can I simplify it down to [a,b,c,d,s,d,c,d]?
Mar 18, 2002 #2 pimi Programmer Mar 18, 2002 36 JP maybe...... concat([], Y, Y). concat([X | XR], Y, [X | Z]) :- concat(XR, Y, Z). s([], []). s([X|XR], [X|Y]) :- atomic(X), !, s(XR, Y). s([X|XR], Y) :- s(X, X2), s(XR, XR2), concat(X2, XR2, Y). Upvote 0 Downvote
maybe...... concat([], Y, Y). concat([X | XR], Y, [X | Z]) :- concat(XR, Y, Z). s([], []). s([X|XR], [X|Y]) :- atomic(X), !, s(XR, Y). s([X|XR], Y) :- s(X, X2), s(XR, XR2), concat(X2, XR2, Y).