prolog sort/4内置的未定义过程
我试图在SWI Prolog中使用一个假定的内置过程。 所讨论的程序是 问题是,当我尝试在我的程序中使用它时,我得到以下错误:prolog sort/4内置的未定义过程,prolog,swi-prolog,Prolog,Swi Prolog,我试图在SWI Prolog中使用一个假定的内置过程。 所讨论的程序是 问题是,当我尝试在我的程序中使用它时,我得到以下错误: ERROR: Undefined procedure: sort/4 ERROR: However, there are definitions for: ERROR: msort/2 ERROR: sort/2 我不明白,因为文档中说它是内置的,但Prolog不知道。我真的需要使用这个程序 你知道如何解决这个问题吗?我认为这是
ERROR: Undefined procedure: sort/4
ERROR: However, there are definitions for:
ERROR: msort/2
ERROR: sort/2
我不明白,因为文档中说它是内置的,但Prolog不知道。我真的需要使用这个程序
你知道如何解决这个问题吗?我认为这是一个库的问题,并试图在代码的开头添加“:-use_module(library(lists))”,但情况仍然是一样的
希望您能帮助我,祝您愉快文档中的
sort/4
谓词相对较新。如果您获得了最新的SWI Prolog稳定版或开发版,它应该是可用的。它是内置的,不是库的一部分。文档中的排序/4
谓词相对较新。如果您获得了最新的SWI Prolog稳定版或开发版,它应该是可用的。它是内置的,不是库的一部分。请尝试了解您使用的是哪个版本的SWI Prolog。在命令行中,这将是$swipl--version
。谢谢,它现在可以工作了!你帮我省去了很多麻烦,非常感谢@false:“sort/2和keysort/2……当然要快得多”——不正确,速度相同。@Boris:你的评论应该是答案,真的。可以作为将来类似问题的参考。@false虽然目前是false,但它涵盖了我所看到的大多数用例。绝对比sort/2
、msort/2
、keysort/2
更通用,并且需要使用的代码更少。请尝试了解您使用的SWI Prolog版本。在命令行中,这将是$swipl--version
。谢谢,它现在可以工作了!你帮我省去了很多麻烦,非常感谢@false:“sort/2和keysort/2……当然要快得多”——不正确,速度相同。@Boris:你的评论应该是答案,真的。可以作为将来类似问题的参考。@false虽然目前是false,但它涵盖了我所看到的大多数用例。绝对比sort/2
、msort/2
、keysort/2
更通用,并且需要使用的代码更少。