[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Debugging plans
From: |
Marius Vollmer |
Subject: |
Re: Debugging plans |
Date: |
29 Jun 2001 15:17:27 +0200 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.0.102 |
Neil Jerram <address@hidden> writes:
> I think a nice general way of specifying a breakpoint is a procedure
> that gets the current stack and can decide, by examining that stack,
> whether to drop into the debugger, display some variable, etc.
Yes, that is general, and we should have such a possibility, but it is
also inefficient, I'm afraid. You would need to stop at every
possible breakpoint and check all your conditions.
For a watch point or some other kind of `global' condition, this is
fine, but for a simple breakpoint at a certain place in the code, it
feels quite wasteful.
For that, I think having a way to splice a special breakpoint
instruction into the memoized code would be best.
On a more general note, I would approach the debugger design from
continuations, I think. That is, once an exception like a unhandled
error, a breakpoint or a triggered watchpoint occurs, the debugger is
invoked with the continuation representing the stopped program. The
debugger could then perform certain operations on that continuation,
like extracting information about its stack frames, evaluating
expressions in the environment where the program stopped, and single
stepping the continuation (which would yield a new continuation), etc.
- Debugging plans, Neil Jerram, 2001/06/28
- Re: Debugging plans,
Marius Vollmer <=