Hey all, It's been a few days, but I finished what I was aiming to do with the debugger, which is just the basic break-at-procedure, break-at-source, step, next, and finish thing. See the manual in Git for docs.
The stepping is all based on source locations, which is cool but somewhat hampered by Guile's inability to give source location information for non-pairs. (See "Source Properties" in the manual.) I don't know what the real solution is, but it's not something I'm going to poke right now. Also, it would be nice to do expression stepping instead of source and procedure stepping, but we would have to record the expressions and map instruction pointers to subexpressions somehow. Possible to do, but not implemented currently. Also also, it would be nice if Guile's source properties had a range -- not just the start line and column, but the end line and column too. Also also also, the debugger should have two modes, one where it's coming from an error and one where it's coming from a breakpoint. In the error case -- the only one we have had so far -- we show source information for the instruction that was just executed. But in the breakpoint case, the top frame needs to show source information for the instruction that's going to be executed next. Anyway, those are all the bugs and enhancements that I know about. Do file bugs if the debugger isn't working for you. Cheers, Andy -- http://wingolog.org/
