为什么gnu prolog不支持"假"谓词?(我换成了swi)

Alg*_*fic 4 prolog gnu-prolog iso-prolog

我一直在使用gprolog thingy在prolog中做一些事情.但现在在测试更多代码时,我发现它不支持"假".哪个是swi支持的?

Fre*_*Foo 8

fail而不是false.我相信前者是Prolog的ISO标准.否则,自己定义:

false :- 0=1.
Run Code Online (Sandbox Code Playgroud)

要么

fail :- 0=1.
Run Code Online (Sandbox Code Playgroud)

  • 不会错误: - 失败.是一个更清晰的定义,因为你以某种方式暗示它们具有相同的效果和/或是同义词? (4认同)
  • 与此同时,ISO Prolog现在既有'fail`又有'false`.它可以在GNU和许多其他系统中使用. (4认同)