知道其参数的函子名称

时间:2013-11-20 21:21:40

标签: prolog

如何在知道其参数的情况下检索仿函数名称,我的仿函数是动态的而不是静态的。  我试过这段代码Fun=..[Functor,1,2],call(Fun). 但是我得到了没有充分实现的错误。是否有其他可能的方法来实现它

提前致谢。

1 个答案:

答案 0 :(得分:1)

我认为没有实际的解决方案,因为有 current_predicate(:PredicateIndicator),它可以枚举给定arity的所有已知谓词(不是函数)(在您的情况下为2)。但是你会获得所有自动加载的谓词等等......

尝试

?- current_predicate(X/2).

获得候选人后,您可以致电第2条,检查候选人是否符合您的需求......