Dynamic Debugging Technique (DDT) is a series of debugger programs originally developed for Digital Equipment Corporation (DEC) hardware, initially known as DEC Debugging Tape because it was distributed on paper tape. The name is a pun on the insecticide DDT. The first version of DDT was developed at MIT for the PDP-1 computer in 1961, but newer versions on newer platforms continued to use the same name. After being ported to other vendor's platforms and changing media, the name was changed to the less DEC-centric version. Early versions of Digital Research's CP/M and CP/M-86 kept the DEC name DDT (and DDT-86 and DDT-68K) for their debugger, however, now meaning Dynamic Debugging Tool.[1][2] The CP/M DDT was later superseded by the Symbolic Instruction Debugger (SID,[3] ZSID, SID86,[4] and GEMSID) in DR DOS and GEM.[5][6]
In addition to its normal function as a debugger, DDT was also used as a top-level command shell for the Massachusetts Institute of Technology (MIT) Incompatible Timesharing System (ITS) operating system; on some more recent ITS systems, "PWORD"—which implements a restricted subset of DDT's functionality—is run first and is overlaid with DDT as soon as the user logs in. DDT could run and debug up to eight processes (called "jobs" on ITS) at a time, such as several sessions of TECO, and DDT could be run recursively - that is, some or all of those jobs could themselves be DDTs (which could then run another eight jobs, and so on). These eight jobs were all given unique names, and the usual name for the original and top-most DDT was "HACTRN" ("hack-tran"). Guy L. Steele wrote a filk poem parody of Edgar Allan Poe's "The Raven," entitled The HACTRN.[citation needed]
Kildall_1978_DDT
was invoked but never defined (see the help page).DR_1976_DDT
was invoked but never defined (see the help page).DR_1978_SID
was invoked but never defined (see the help page).DR_1982_SID86
was invoked but never defined (see the help page).Paul_1997_DRDOSTIP
was invoked but never defined (see the help page).Paul_2002_DEBUG
was invoked but never defined (see the help page).