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

debugger commands

Miles Bader writes: 

> What do people think about requiring debugger commands to be
> keywords instead of simply symbols?  This would seem safer than the
> current situation (e.g., trying to see the value of your variable
> "q"...).

I like this idea very much, but then I may be spoiled by Allegro and
Lucid, where top-level commands (not only in the debugger) already
work that way.

Independent of that, numbering frames in the backtrace would
definitely be a win.

Under Allegro, the debugger commands I used most often are:

  :zo (alias :zoom)	-- BACKTRACE
  :rest			-- restart this frame
  :up			-- U
  :ret <value>		-- return a value from this frame
  :cont			-- continue (same as GO in CMU CL)
  :dn			-- D
  :cur			-- show (and store in *) the form
			   corresponding to the call that generated
			   the current frame

There seems to be no equivalent to :REST and :RET in CMUCL:

  0] (debug:debug-return 0)
  Reader error at 9495 on #<Synonym Stream to *TERMINAL-IO*>:
  Symbol "DEBUG-RETURN" not found in the DEBUG package.
  Error flushed ...

The Allegro debugger also does a good job at hiding "uninteresting"
frames such as the debugger's or those internal to CLOS' dispatch