[Tutor] What is a "symbolic debugger"

Alan Gauld alan.gauld at btinternet.com
Sat Aug 18 10:13:59 CEST 2007


"Dick Moores" <rdm at rcblue.com> wrote

> article I saw a term, "symbolic debugger", I  had been wondering
> about for a while. Google was of little help (to me, at least), and

Its a debugger that undestand symbols, in other words it can read
the symbol table produced by a compiler/interpreter.

Most debuggers nowadays are symbolic, but in the early days
they weren't and you had to debug all code at the assembler/memory
address level.

If you want to have fun with that try loading a simple program into
the DOS DEBUG command and stepping through it examining
the memory image as you go., It is decidedly non symbolic!

Or on Linux/Unix you may be able to use adb. adb is often using
for debugging core dumps from programs that haven't been
compiled with the -g debug flag or have had the symbol table
'strip'ed.

> that the debugger I want to learn, WinPdb, is also a symbolic
> debugger, but what's "symbolic" about it?

Yes Python debuggers are all symbolic.
They can understand your variable names etc so you can say

break foo

instead of

break [0x25698567]

HTH,

-- 
Alan Gauld
Author of the Learn to Program web site
http://www.freenetpages.co.uk/hp/alan.gauld 




More information about the Tutor mailing list