假设我们有一个谓词p/2
做类似的事情:
p('an atom', OutputList) :-
some_predicate_1,
some_predicate_2,
...
findall(...,...,OutputList).
p/2
做一些任意复杂的事情,最后把一些结果放在 OutputList 中。
假设我需要将谓词的主体p/2
放在一个列表中:
Body = [some_predicate_1,...,findall(...,...,OutputList)]
并且我想执行它。
如果我做类似的事情call(Body)
,我该如何检索OutputList
?
我可以使用其他谓词吗?
也许call/1
或call/2
不适合这个目的。