我正在尝试熟悉 Prolog(特别是 SWI Prolog)。
我有这个非常简单的清单:
animal(bear).
animal(mouse).
animal(bird).
现在,每当我要求所有满足谓词动物的原子(正确的表达方式是什么?)时,我总是只得到第一个。
?- animal(X).
X = bear .
尽管对于动物来说,所有三个原子都评估为“真”。
?- animal(mouse).
true.
?- animal(bird).
true.
我究竟做错了什么?这种行为是否可以通过某些设置来控制?