Dnia 8 Sierpnia 2015, 13:59, So, Donald Winiecki napisał:
> I have a question about exercise 2.2 in LPN!.
>
> In particular, it appears to be the case that GProlog returns different
> results than does SWI-Prolog on question 5 in exercise 2.2.

The heart of the problem is the clause:
magic(X) :- wizard(X).

In the program code predicate wizard is referenced but defined nowhere.

> I understand SWI-Prolog's results, but don't understand why GProlog
> stops  when it hits the rule "magic(X):- wizard(X)." Any pointers
> are terrifically appreciated!

I have the opposite problem!  I understand GNU Prolog's approach but fail
to grasp why SWI does not signal missing definitions by default. :-p

Anyway, how the solver behaves when it hits nonexistent procedure is
configurable.  Use set_prolog_flag(unknown, X) where X can be 'error',
'fail' or 'warning' to change it.

-- 
Michał


_______________________________________________
Users-prolog mailing list
Users-prolog@gnu.org
https://lists.gnu.org/mailman/listinfo/users-prolog

Reply via email to