Почему пролог GNU не поддерживает «ложный» предикат? (Я перешел на swi) - PullRequest
4 голосов
/ 12 ноября 2010

Я использовал gprolog для некоторых вещей в прологе.Но теперь при тестировании еще некоторого кода я обнаружил, что он не поддерживает «ложь».Который поддерживается SWI?

Ответы [ 2 ]

8 голосов
/ 12 ноября 2010

Используйте fail вместо false.Я полагаю, что первое находится в стандарте ISO для Пролога.В противном случае определите это самостоятельно:

false :- 0=1.

или

fail :- 0=1.
4 голосов
/ 14 ноября 2010

Последние версии GNU Prolog (1.4.0) поддерживают false/0.

false/0 не определено в исходном стандарте ISO 1995 года, но является частью Cor.2:2012 .

...