predsort / 3 existence_error [Prolog]

时间:2017-11-26 07:14:48

标签: prolog

我试图按子列表中的第三个元素对列表列表进行排序,并且使用谓词进行排序,这样定义如下:

sortData(X, [_,_,Z1], [_,_,Z2]) :- compare(X, Z1, Z2).

当我尝试在我的Prolog控制台(predsort(sortData, [[0,5,2],[6,3,1]], X).)中使用此谓词时,出现错误说明:

uncaught exception: error(existence_error(procedure,predsort/3),top_level/0)

我做了一些研究,发现this SO question就此问题,但无法使用评论者建议的提示来修复我的错误。我尝试将:- use_module(library(sort)).添加到我的代码中,但是在编译时会发出警告(warning: unknown directive use_module/1 - maybe use initialization/1 - directive ignored)。

关于为什么我可能会遇到predsort / 3存在错误的任何提示?

编辑:根据上述调用,我想要的输出是:X = [[6, 3, 1], [0, 5, 2]].

0 个答案:

没有答案