【发布时间】:2015-11-29 14:57:08
【问题描述】:
我正在使用 JPL 在 Java 程序中执行一些 SWI-Prolog 查询。当我想创建一个新的查询时,我希望能够使用jpl.Util.textToTerm 直接从用户输入中实例化术语,而无需自己进行解析。
问题在于,这种方法似乎总是将变量标识符(即以大写字母开头的东西)解析为匿名变量(即以_ 开头的东西)。
例如,jpl.Util.textToTerm("X") 返回名称为 _1 而不是 X 的 jpl.Variable,这显然是个问题,因为这意味着查询后我将无法访问任何绑定。
直接从字符串创建jpl.Query,如new Query("reverse([1,2],X)") 有完全相同的问题。
【问题讨论】:
标签: java prolog swi-prolog jpl