[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: New debugger

From: Ian Hulin
Subject: Re: New debugger
Date: Mon, 11 Jan 2010 23:02:04 +0000
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-GB; rv: Gecko/20091204 Lightning/1.0b1pre Thunderbird/3.0

Hi Andy,
I've just been involved with writing some guile debug support in LilyPond using V1.8.7 (ice-9 debugging).

On 29/12/09 20:45, Andy Wingo wrote:
Hey folks,

First off, happy solstice :) Hope all are well.

If you're following git, you might have noticed that if you get an
error, you're now dropped into a debugger, instead of getting a
backtrace at the console.

That's pretty much all you can do at this point. It's still pretty weak,
but being able to do bt #:full? #t #:width 1000 is already quite useful.
Here's my TODO list regarding the debugger:

;; eval expression in context of frame
;; set local variable in frame
;; step until next instruction
;; step until next function call/return
;; step until return from frame
;; step until different source line
;; step until greater source line
;; watch expression
;; break on a function
;; remove breakpoints
;; set printing width
;; (reuse gdb commands perhaps)
;; disassemble a function
;; disassemble the current function
;; inspect any object

Thoughts? Should this thing be on by default? There should certainly be
a way to turn it off...

;; step and then eval an expression.

Maybe add commands to interface to tracing in the debugger as well
;; set trace on procedure entry/exit
;; set trace for each instruction in a procedure or procedure callees
;; suppress trace for calls above/below a certain stack frame index

How above setting/resetting default module context for symbols from within the debugger?

Will the new debugger be backwards compatible with (ice-9 debugging) in V1.8.7?


Ian Hulin

reply via email to

[Prev in Thread] Current Thread [Next in Thread]