[m-dev.] proposed command set for the internal trace based debugger

Fergus Henderson fjh at cs.mu.OZ.AU
Wed Jun 3 00:07:34 AEST 1998


On 02-Jun-1998, Peter Schachte <pets at students.cs.mu.oz.au> wrote:
> > > I'm not sure I understand the difference between break and spy points.
> > 
> > My intent in suggesting the distinction was that a break point
> > would stop at only one port, whereas a spy point would stop at
> > all ports.
> 
> The distinction might make a lot of sense internally, but from the user's
> point of view I think it would be simpler to think of them as the same
> thing.  

I think you have it backwards.

I think there are (at least) two important groups of users to take into
account:

	(a) users that have used Prolog debuggers
	(b) users that have used imperative language debuggers

For those in group (a), the concept of "spy points" that stop at any
port will already be familiar.  For those in group (b), the concept
of "break points" that just stop at a particular place in the program
will already be familiar.  So yes, spy point versus break point
is just one of quite a few orthogonal dimensions in which the
properties of a spy/break point can vary.  But because of the
historical background I think the distinction between the two
is important.  It's useful to give a name to the two different
concepts.

Internally, the implementation should treat spy/break points
in a pretty similar manner.  For example, there should be
a single table that holds both spy points and break points.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3        |     -- the last words of T. S. Garp.



More information about the developers mailing list