所以,假设我在 Prolog 数据库中有以下内容:
person(john).
person(mary).
happy(john).
很明显,如果我想列出所有人,我可以输入:
person(X).
但是,如果我想找到关于约翰的所有真实情况怎么办?我不能做:
X(john).
但我想要的效果是能够放入“john”并返回“person”和“happy”。
显然还有另一种方式可以存储我的信息:
is(person, john).
is(person, mary).
is(happy, john).
然后,我可以这样做:
is(X, john).
但我在这里失去了一些表现力。我真的很想能够做类似的事情:
X(john).
有任何想法吗?
谢谢!