LISP and Symbolic Computation, 3(1)39-65

Moped (A Portable Debugger)

Mohammad Pourheidari, Hewlett Packard, Mail Stop 47LH, 19447 Pruneridge Ave., Cupertino, CA 95014
Robert R. Kessler, Department of Computer Science, 3190 MEB, University of Utah, Salt Lake City, UT 84112
Harold Carr, Department of Computer Science, 3190 MEB, University of Utah, Salt Lake City, UT 84112

Abstract: Moped is a portable debugger that uses enhanced tracing facilities and backtracing to discover unusual or undesirable program behaviors. It is based upon two modules--Program Probes and Program History. Program Probes is a forward tracing utility which allows Moped to dynamically examine the execution of a program. Program History is a backtracing utility which allows Moped to study the executed section of a program. Together, Program Probes and Program History enable Moped to have more control over the behavior of a program than either one of them, and consequently to provide an easier path toward program debugging. Moped is written in Common LISP with no dependencies on details of the machine implementation. Therefore, it is easily portable to any Common LISP environment.

Keywords: debugging, tracing, backtracing, Lisp, probe, use-definition analysis, macro, variable binding, dynamic redefinition

This article is not available online.
[picture of journal cover]

March 2003 - hosc@brics.dk