我正在尝试使用 jpl 将相同的 swipl 文件加载到不同的模块中。我必须这样做的原因是因为我想要一个可以断言新谓词的模块,同时保持另一个不变。问题是 swipl 似乎禁止这样做,
jpl.PrologException: PrologException: error(permission_error(load, source, 'load.pro'), context(/(load_files, 2), 'Non-module file already loaded into module stable; trying to load into to_mess'))
at jpl.Query.get1(Query.java:336)
at jpl.Query.hasMoreSolutions(Query.java:258)
at jpl.Query.oneSolution(Query.java:688)
at jpl.Query.hasSolution(Query.java:759)
我试图为 load_files 设置 redefine_module(true),但还是不行
val query = new Query(s"load_files(${m}:'${loader}', [redefine_module(true)])")
query.allSolutions()
我已经被这个阻止了几个小时,但在网上找不到解决方案。有人可以帮忙吗??