Hello

the warning message tells you that the third clause is ignored (because it is 
discontinuous)

> On 8 Feb 2023, at 10:19, one_of_us <[email protected]> wrote:
> 
> Hello!
> My name is Pavel.
> Thank you very much for so pretty gprolog!
> I have found some strange feature:
> ---
> 
> o@Kiki:~/prolog$ gprolog
> GNU Prolog 1.5.0 (64 bits)
> Compiled Jan  8 2023, 18:49:30 with gcc
> Copyright (C) 1999-2023 Daniel Diaz
> 
> | ?- [user].
> compiling user for byte code...
> x(a, a).
> x(b, a).         % Here is all good.
> y(a, a).
> end_of_file.
> user compiled, 3 lines read - 384 bytes written, 23325 ms
> 
> (1 ms) yes
> | ?- x(b, A).
> 
> A = a
> 
> (1 ms) yes
> | ?- halt.
> 
> o@Kiki:~/prolog$ gprolog
> GNU Prolog 1.5.0 (64 bits)
> Compiled Jan  8 2023, 18:49:30 with gcc
> Copyright (C) 1999-2023 Daniel Diaz
> 
> | ?- [user].
> compiling user for byte code...
> x(a, a).   % For some reason
> y(a, a).   % there is an error
> x(b, a).   % in this order.
> user:3: warning: discontiguous predicate x/2 - clause ignored
> end_of_file.
> user compiled, 3 lines read - 313 bytes written, 38895 ms
> 
> (1 ms) yes
> | ?- x(b, A).
> 
> no
> | ?- halt.
> 
> ---
> That's my fault or gprolog's bug?
> Good bye!
> 
> 


 

















Reply via email to