Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.

Thomas A. Cargill

dblp:32/3426 · DBLP profile ↗
← Back
8ranked-venue papers
6as first author
0since 2021 · last 1993
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 8 · 6 first-authorSystems, architecture and hardware · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
1 paper
Processor architecture and microarchitecture · 100%
Software engineering, system software, and programming languages
2 papers
Debugging and program repair · 82% Requirements engineering and software design · 18%

Topics — the 4 heaviest of 5, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Processor architecture and microarchitecture
debugging support
0.011987
Cheap Hardware Support for Software Debugging and Profiling · ASPLOS 1987
Debugging and program repair › debugging tools
debugger implementation
0.011986
Pi: A Case Study in Object-Oriented Programming · OOPSLA 1986
Debugging and program repair › debugging tools
data breakpoints
0.011987
Cheap Hardware Support for Software Debugging and Profiling · ASPLOS 1987
Requirements engineering and software design › object-oriented analysis and design
object-oriented design
0.011986
Pi: A Case Study in Object-Oriented Programming · OOPSLA 1986

Methods — techniques the papers use, named apart from their topics

instruction counter · 0.0exception-based debugging · 0.0
YearPublicationVenuePosition
1993 Panel - Is Multiple Inheritance Essential to OOP?
abstract
article Free Access Share on Is multiple inheritance essential to OOP? (panel) Authors: Yen-Ping Shan View Profile , Tom Cargill View Profile , Brad Cox View Profile , William Cook View Profile , Mary Loomis View Profile , Alan Snyder View Profile Authors Info & Claims ACM SIGPLAN NoticesVolume 28Issue 10Oct. 1, 1993 pp 360–363https://doi.org/10.1145/167962.165923Published:01 October 1993Publication History 3citation781DownloadsMetricsTotal Citations3Total Downloads781Last 12 Months30Last 6 weeks2 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Yen-Ping Shan, Thomas A. Cargill, Brad Cox, William R. Cook, Mary E. S. Loomis, Alan Snyder
OOPSLA2
1987 Cheap Hardware Support for Software Debugging and Profiling
abstract
We wish to determine the effectiveness of some simple hardware for debugging and profiling compiled programs on a conventional processor. The hardware cost is small -- a counter decremented on each instruction that raises an exception when its value becomes zero. With the counter a debugger can provide data watchpoints and reverse execution: a profiler can measure the total instruction cost of a code segment and sample the program counter accurately. Such a counter has been included on a single-board MC68020 workstation, for which system software is currently being written. We will report our progress at the symposium.
Thomas A. Cargill, Bart N. Locanthi
ASPLOS1
1986 Pi: A Case Study in Object-Oriented Programming
abstract
Pi is a debugger written in C + +. This paper explains how object-oriented programming in C + + has influenced Pi's evolution. The motivation for object-oriented programming was to experiment with a browser-like graphical user interface. The first unforeseen benefit was in the symbol table: lazy construction of an abstract syntax-based tree gave a clean interface to the remainder of Pi, with an efficient and robust implementation. Next, though not in the original design, Pi was easily modified to control multiple processes simultaneously. Finally, Pi was extended to control processes executing across multiple heterogeneous target processors.
Thomas A. Cargill
OOPSLA1
1985 Implementation of the Blit Debugger
abstract
Abstract joff is an asynchronous, source‐level, break‐and‐examine debugger for C programs running on the Blit, a programmable bitmap terminal, joff is implemented as two processes: a small process running in the terminal and a larger process running in a time‐sharing host. The constraints on its design and a menu‐driven user interface combine to present an unusual set of implementation difficulties. The way the problems were tackled and the degree to which they were solved may be interesting to those designing other debuggers. Operating system designers should assess the merits of a debugger that runs asynchronously with its subject and consider providing the necessary support.
Thomas A. Cargill
Softw. Pract. Exp.1
1984 Concurrent Programming in the Ada Language: The Polling Bias
abstract
Abstract The rendezvous is an important concept in concurrent programming—two processes need to synchronize, i.e. rendezvous, to exchange information. The Ada programming language is the first programming language to use the rendezvous as the basis of its concurrent programming facilities. Our experience with rendezvous facilities in the Ada language shows that these facilities lead to and encourage the design of programs that poll. Polling is generally, but not always, undesirable because it is wasteful of system resources. We illustrate and examine the reasons for polling bias in the Ada language. We give suggestions on how to avoid polling programs, and suggest changes to the rendezvous facilities to eliminate the polling bias. The ramifications of these changes to the implementation of the Ada language are also discussed. Although we have focused on the rendezvous facilities in the Ada language our analysis is also applicable to other languages. A polling bias can occur in any concurrent programming language based on the rendezvous mechanism if it does not provide appropriate facilities.
Narain H. Gehani, Thomas A. Cargill
Softw. Pract. Exp.2
1983 The Blit debugger
Thomas A. Cargill
J. Syst. Softw.1
1982 A Robust Distributed Solution to the Dining Philosophers Problem
abstract
Abstract A distributed solution to Dijkstra's ‘Dining Philosophers’ problem is presented. There is no central synchronization mechanism and it is robust in that the impact of failures is local. The solution is amenable to implementation using a wide class of synchronization primitives. A concrete implementation is presented in Ada.
Thomas A. Cargill
Softw. Pract. Exp.1
1981 Full-screen Editing in a Hostile Environment
abstract
Abstract This paper describes a simple full‐screen editor which operates effectively in a very restrictive hardware and software environment in which dumb CRT terminals run half‐duplex at 1200 baud to the line buffering front‐end of a timesharing mainframe. The use of such an inappropriate system is dictated by other considerations and the experiment with screen editing was motivated by the frustration encountered in manipulating highly formatted text with a line‐oriented text editor. Early success with a crude editor lead to an improved version which functions acceptably for a several types of text. The particular constraints of this environment, how they were overcome or avoided and their influence on the editor are addressed. The paper demonstrates that successful full‐screen editing in this environment calls for software that differs in its basic design from other full‐screen editors.
Thomas A. Cargill
Softw. Pract. Exp.1