我想從這樣的列表來構建:[name1(value1), name2(value2),...]
一個這樣的名單:[value1, value2,...]
,我有以下代碼:Prolog的建設,用列表的= ../2
construct_listv([],_).
construct_listv([A0|T], Values) :-
A0 =.. [_, Value],
append([Value], [], Values),
construct_listv(T, Values).
如果我把用於示例construct_listv([su(2), se(5)], ResultList)
。
誰能告訴我,爲什麼第二次調用追加失敗,正確的方式做到這一點?
感謝hardmath,這正是問題 – mll