Subject: Re: [SWIPL] The use of 'spy' in SWI-Prolog

From: "Richard A. O'Keefe" <[email-masked]>
Date: Tue, 30 Jan 2001 13:47:27 +1300 (NZDT)

David Yang wrote:
	I have prolems in tracing predicates in SWI-Prolog. I
	spy on one predicate but all other predicates get
	spied on too.

If there is a spypoint on a predicate, then
 - tracing is switched ON when control enters a call to that predicate
 - tracing is NOT switched OFF unless you say so
 - you can "leap" to the next spypoint using "l"
 - non-spied predicates are NOT removed from the trace.

It sounds as though you expect non-spied predicates to be hidden.
Thing is, you have the choice of seeing them ("creep") or not ("leap").

This is really just like break-points in a C debugger.
When control reaches a break-point, the debugger "wakes up", but if
you then start single-stepping ("creeping" in Prolog terminology)
a C debugger won't hide all the statements that don't have break-points.
But you _can_ continue to the next break-point, and that's like "leap".