trace: skip at Redo port succeeds only at second attempt

Kilian Evang <[email protected]>
Newsgroups gmane.comp.ai.prolog.swi
Message-ID <[email protected]>
Hi,

I find that in the tracer, consistently, issuing the skip command at a
Redo port will first just print the same line again. Issuing skip a
second time then shows the expected behavior:

ke@apis:~/Dropbox/prolog/test$ cat skip2.pl
a(X) :-
  b(X).

b(2).
b(3).
ke@apis:~/Dropbox/prolog/test$ swipl -l skip2
% /home/ke/Dropbox/prolog/test/skip2.pl compiled 0.00 sec, 4 clauses
Welcome to SWI-Prolog (Multi-threaded, 32 bits, Version 6.4.1)
Copyright (c) 1990-2013 University of Amsterdam, VU Amsterdam
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to redistribute it under certain conditions.
Please visit http://www.swi-prolog.org for details.

For help, use ?- help(Topic). or ?- apropos(Word).

?- trace, a(X).
   Call: (7) a(_G1834) ? creep
   Call: (8) b(_G1834) ? skip
   Exit: (8) b(2) ? creep
   Exit: (7) a(2) ? creep
X = 2 ;
   Redo: (8) b(_G1834) ? skip
   Redo: (8) b(_G1834) ? skip
   Exit: (8) b(3) ? creep
   Exit: (7) a(3) ? creep
X = 3.

[trace]  ?-

Is this a bug?

Best,
Kilian
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.