Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site watmath.UUCP Path: utzoo!watmath!mwang From: mwang@watmath.UUCP (mwang) Newsgroups: ont.events Subject: UW Systems Seminar, Dr. Cargill on "A Debugger's Object-Oriented Architecture" Message-ID: <14680@watmath.UUCP> Date: Mon, 27-May-85 14:26:10 EDT Article-I.D.: watmath.14680 Posted: Mon May 27 14:26:10 1985 Date-Received: Wed, 29-May-85 01:32:05 EDT Expires: Fri, 7-Jun-85 00:00:00 EDT Organization: U of Waterloo, Ontario Lines: 40 DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF WATERLOO SEMINAR ACTIVITIES SYSTEMS SEMINAR - Thursday, June 6, 1985. Dr. T.A. Cargill of Bell Laboratories will speak on ``A Debugger's Object-Oriented Architecture.'' TIME: 2:30 PM (Please Note) ROOM: MC 3008 ABSTRACT The choice of an object-oriented architecture for a debugger has influenced the software's evolution in unforeseen ways and resulted in a program whose func- tion exceeds the author's original goals. The motiva- tion for object-oriented programming was to experiment with a browser-like graphics user interface; it worked well. The first unforeseen benefit was in the symbol table: lazy construction of a abstract syntax-based tree (built from the loader's flattened format) gave a clean interface to the remainder of the debugger, with an efficient and robust implementation. Next, though the intention was to treat only one process at a time, the debugger was trivially modified to control multiple processes simultaneously. Finally, it was extended to control an arbitrary set of processes spanning the user's loosely-coupled timesharing computer and bitmap terminal, running different operating systems on dif- ferent processors. The debugger is written in C++, an extension of C with Simula-like classes. Those parts of the debugger that adapt to different target environ- ments employ the type derivation and inheritance mechanism of C++.