On 3 May 2020, at 18:13, Clem Cole
<clemc(a)ccc.com> wrote:
On Sat, May 2, 2020 at 4:16 PM Paul Ruizendaal <pnr(a)planet.nl> wrote:
The dbx debugger appears to stand on the shoulders of sdb, and gdb on the shoulders of
dbx.
Mumble ... It's true rms started with dbx and peed on it in their usually way -
similar to the Gosling EMACS to GnuEMACS story.
But Mark wrote DBX from scratch, although I would be
surprised if looked at how adb and sdb handled the symbol table and could have lifted that
code from their. If I remember discussions with him about it, his interface model was
really more VMS debugger more than sdb. As I said, I really don't remember anyone
at UCB in those days using sdb.
I meant that in the sense of Feynmann standing on the shoulders of Einstein, in turn
standing on the shoulders of Newton. Not in the sense of swiping stuff.
Things seem to have evolved quite substantially in the 1979-1982 time frame. With 1979
SDB, a.out and its symbols evolve and gain (C based) type information. In 4BSD, late 1980,
it evolves some more and gains long symbol names (i.e. >8 chars). SDB tracks this, but
stays basically the same.
It would seem that one of the innovations in the first versions of DBX (surviving in 4.1c,
end of 1982) was to make use of these long names to store much more detailed type
information than the 16-bit field used for this in SDB.
SDB seems to have had a short life: in the V8 source on TUHS is a readme saying that it
has been deprecated:
"sdb is deprecated these days. what's here works, but needs a lot of cleanup.
c works reasonably well. f77 works barely, especially in areas near
equivalence and common. (f77 needs cleaning up just as badly.)”
All that seems to match your recollections.