Demo Data from VLDB 2026 / reviewers in the wild / expert
Daniel G. Bobrow
dblp:b/DGBobrow · also Daniel Gureasko Bobrow
· DBLP profile ↗
47ranked-venue papers
18as first author
0since 2021 · last 2015
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Artificial intelligence and machine learning · 21 · 9 first-authorSoftware engineering, systems software and programming languages · 13 · 6 first-authorGraphics, computer vision, multimedia, augmented reality and games · 11 · 4 first-authorHuman-computer interaction and ubiquitous computing · 10 · 1 first-authorTheory of computation · 3Systems, architecture and hardware · 2 · 2 first-authorDatabases, data management, data science and information retrieval · 1
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.
| Artificial intelligence
13 papers |
Knowledge representation and reasoning · 90% Multi-agent systems · 3% Motion planning and robot control · 3% | |
| Human-computer interaction and pervasive computing
9 papers |
Health and well-being technologies · 50% Collaborative and social computing · 24% User interface design and tools · 12% | |
| Software engineering, system software, and programming languages
14 papers |
Programming languages and type systems · 47% Requirements engineering and software design · 29% Runtime systems and virtual machines · 21% | |
| Interdisciplinary, comprehensive, and emerging computing
1 paper |
Computational science and engineering · 100% |
Topics — the 30 heaviest of 51, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Knowledge, reasoning and agents › Knowledge representation and reasoning
qualitative reasoning |
0.2 | 4 | 2014 | Qualitative Reasoning with Modelica Models · AAAI 2014 Modeling Time in Hybrid Systems: How Fast Is "Instantaneous"? · IJCAI 1995 Qualitative Reasoning about Physical Systems: An Introduction · Artif. Intell. 1984 |
Knowledge, reasoning and agents › Knowledge representation and reasoning › qualitative reasoning
qualitative simulation |
0.2 | 1 | 2014 | Qualitative Reasoning with Modelica Models · AAAI 2014 |
Collaborative and social computing › knowledge management
knowledge sharing |
0.0 | 1 | 2003 | Information use of service technicians in difficult cases · CHI 2003 |
Collaborative and social computing
computer-supported cooperative work |
0.0 | 1 | 1996 | The Social-Technical Design Circle · CSCW 1996 |
Learning and educational technologies › online learning
online learning communities |
0.0 | 1 | 1996 | The Social-Technical Design Circle · CSCW 1996 |
Collaborative and social computing › socio-technical systems
socio-technical design |
0.0 | 1 | 1996 | The Social-Technical Design Circle · CSCW 1996 |
Collaborative and social computing › computer-supported cooperative work
task management |
0.0 | 1 | 2004 | What a to-do: studies of task management towards the design of a personal task list manager · CHI 2004 |
Robotics › Motion planning and robot control
hybrid systems |
0.0 | 1 | 1995 | Modeling Time in Hybrid Systems: How Fast Is "Instantaneous"? · IJCAI 1995 |
Computer vision › Video understanding and tracking
temporal modeling |
0.0 | 1 | 1995 | Modeling Time in Hybrid Systems: How Fast Is "Instantaneous"? · IJCAI 1995 |
Programming languages and type systems
object-oriented programming |
0.0 | 3 | 1986 | Virtual Copies - At the Boundary Between Classes and Instances · OOPSLA 1986 Objects in Concurrent Logic Programming Languages · OOPSLA 1986 CommonLoops: Merging Lisp and Object-Oriented Programming · OOPSLA 1986 |
Collaborative and social computing › collaborative systems
multi-user interfaces |
0.0 | 2 | 1987 | WYSIWIS Revised: Early Experiences with Multiuser Interfaces · ACM Trans. Inf. Syst. 1987 WYSIWIS revised: early experiences with multi-user interfaces · CSCW 1986 |
Knowledge, reasoning and agents › Multi-agent systems
distributed problem solving |
0.0 | 1 | 1991 | Multiple Approaches to Multiple Agent Problem Solving · IJCAI 1991 |
Knowledge, reasoning and agents › Multi-agent systems › distributed problem solving
multi-agent problem solving |
0.0 | 1 | 1991 | Multiple Approaches to Multiple Agent Problem Solving · IJCAI 1991 |
Human-AI interaction › conversational interaction
conversation design |
0.0 | 1 | 1991 | Design for Conversation: Lessons from Cognoter · Int. J. Man Mach. Stud. 1991 |
Programming languages and type systems
logic programming |
0.0 | 2 | 1986 | Objects in Concurrent Logic Programming Languages · OOPSLA 1986 If Prolog is the Answer, What is the Question? or What it Takes to Support AI Programming Paradigms · IEEE Trans. Software Eng. 1985 |
Runtime systems and virtual machines
garbage collection |
0.0 | 1 | 1990 | Combining Generational and Conservative Garbage Collection: Framework and Implementations · POPL 1990 |
Runtime systems and virtual machines › garbage collection
generational garbage collection |
0.0 | 1 | 1990 | Combining Generational and Conservative Garbage Collection: Framework and Implementations · POPL 1990 |
Knowledge, reasoning and agents › Knowledge representation and reasoning › knowledge acquisition
knowledge base construction |
0.0 | 1 | 1986 | Virtual Copies - At the Boundary Between Classes and Instances · OOPSLA 1986 |
Collaborative and social computing › groupware
shared views |
0.0 | 1 | 1986 | WYSIWIS revised: early experiences with multi-user interfaces · CSCW 1986 |
Programming languages and type systems › logic programming
concurrent logic programming |
0.0 | 1 | 1986 | Objects in Concurrent Logic Programming Languages · OOPSLA 1986 |
Programming languages and type systems
language design |
0.0 | 1 | 1986 | CommonLoops: Merging Lisp and Object-Oriented Programming · OOPSLA 1986 |
Programming languages and type systems › object-oriented programming
multiple inheritance |
0.0 | 1 | 1986 | CommonLoops: Merging Lisp and Object-Oriented Programming · OOPSLA 1986 |
Programming languages and type systems
programming paradigms |
0.0 | 1 | 1985 | If Prolog is the Answer, What is the Question? or What it Takes to Support AI Programming Paradigms · IEEE Trans. Software Eng. 1985 |
Programming languages and type systems › logic programming
prolog |
0.0 | 1 | 1985 | If Prolog is the Answer, What is the Question? or What it Takes to Support AI Programming Paradigms · IEEE Trans. Software Eng. 1985 |
Collaborative and social computing › groupware
meeting support |
0.0 | 2 | 1987 | WYSIWIS Revised: Early Experiences with Multiuser Interfaces · ACM Trans. Inf. Syst. 1987 WYSIWIS revised: early experiences with multi-user interfaces · CSCW 1986 |
Collaborative and social computing › collaborative systems
collaboration tools |
0.0 | 1 | 1991 | Design for Conversation: Lessons from Cognoter · Int. J. Man Mach. Stud. 1991 |
Operating systems › resource management
memory management |
0.0 | 1 | 1990 | Combining Generational and Conservative Garbage Collection: Framework and Implementations · POPL 1990 |
Requirements engineering and software design
software architecture |
0.0 | 1 | 1981 | Layered Networks as a Tool for Software Development · IJCAI 1981 |
Programming languages and type systems
programming environment |
0.0 | 1 | 1980 | Descriptions for a Programming Environment · AAAI 1980 |
Runtime systems and virtual machines › garbage collection
reference counting |
0.0 | 1 | 1980 | Managing Reentrant Structures Using Reference Counts · ACM Trans. Program. Lang. Syst. 1980 |
Methods — techniques the papers use, named apart from their topics
personalized prediction models · 0.2binary classification · 0.2field study · 0.0diary study · 0.0interview study · 0.0ethnographic observation · 0.0virtual copies · 0.0object-oriented programming · 0.0logic programming · 0.0system design · 0.0preprocessor · 0.0multiuser interface prototyping · 0.0experience report · 0.0design study · 0.0qualitative reasoning · 0.0modeling · 0.0layered networks · 0.0empirical measurement · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2015 | Towards a mobile and wearable system for predicting panic attacksabstractIn this paper, we present first steps towards a mobile and wearable system intended to help people who experience regular and spontaneous panic attacks due to panic disorder. The goal of the system is to predict oncoming panic attacks and to deliver in-the-moment interventions on a smartphone device. Interventions are intended to reduce symptom severity by enabling a user to respond to approaching panic episodes. An initial feasibility study is described where a small real-world data set was collected. Personalized prediction models were trained which take, as input, physiological data and output a binary classification of either pre-panic or non-panic. We demonstrate proof-of-concept of episode prediction on this small dataset. Jonathan Rubin, Hoda Eldardiry, Rui Abreu 0001, Shane Ahern, Honglu Du, Ashish Pattekar, Daniel G. Bobrow |
UbiComp | 7 |
| 2015 | A wearable and mobile intervention delivery system for individuals with panic disorderabstractPanic disorder is a serious condition that affects approximately six million adults in the United States per year. Reducing the severity of panic attack symptoms would allow a better quality of life for panic attack sufferers. This paper presents steps towards a mobile and wearable system that aims to help reduce the severity of symptoms experienced by individuals with this condition. The system provides a way to continuously monitor the physiological data of an individual via a wearable device. Users are able to report when panic attacks take place, along with a rating of the severity of symptoms experienced. Reported episodes provide ground truth data to build panic prediction models. The eventual goal of the system is to make predictions about approaching panic attacks and to deliver interventions that help the individual to cope with the approaching episode. We describe a mobile-based intervention that has been developed, which instructs the individual to perform breathing and relaxation exercises. Presently, the system has been utilized in a small pilot study where 10 individuals who suffer from panic disorder reported 29 panic attacks while collecting physiological data, along with the severity of symptoms. We found that out of 15 symptoms the ones with high severity reported were anxiety, worry and shortness of breath. Furthermore, physiological differences were observed between panic and non-panic intervals. Luis Cruz 0002, Jonathan Rubin, Rui Abreu 0001, Shane Ahern, Hoda Eldardiry, Daniel G. Bobrow |
MUM | 6 |
| 2015 | Diagnosing Advanced Persistent Threats: A Position Paper
Rui Abreu 0001, Daniel G. Bobrow, Hoda Eldardiry, Alexander Feldman, John Hanley, Tomonori Honda 0001, Johan de Kleer, Alexandre Perez, David W. Archer |
DX | 2 |
| 2014 | Qualitative Reasoning with Modelica ModelsabstractQualitative reasoning can play an important role in early stage design. Currently, engineers explore the design space using simulation models built in languages such as Modelica. To make qualitative reasoning useful to them, designs specified in their languages must be translated into a qualitative modeling language for analysis. The contribution of this paper is a sound and effective mapping between Modelica and qualitative reasoning. To achieve a sound mapping, we extend envisioning, the process of generating all relevant qualitative behaviors, to support Modelica's declarative events. For an effective mapping, we identify three classes of additional constraints that should be inferred from the Modelica representation thereby exponentially reducing the number of unrealizable trajectories. We support this contribution with examples and a case study. Matthew Klenk 0001, Johan de Kleer, Daniel G. Bobrow, Bill Janssen |
AAAI | 3 |
| 2011 | Deducing answers to english questions from structured dataabstractWe describe ongoing research using natural English text queries as an intelligent interface for inferring answers from structured data in a specific domain. Users can express queries whose answers need to be deduced from data in different databases, without knowing the structures of those databases nor even the existence of the sources used. Users can pose queries incrementally, elaborating on an initial query, and ask follow-up questions based on answers to earlier queries. Daniel G. Bobrow, Cleo Condoravdi, Kyle Richardson 0001, Richard J. Waldinger, Amar Das |
IUI | 1 |
| 2008 | The Encoding of lexical implications in VerbNet Predicates of change of locations
Annie Zaenen, Daniel G. Bobrow, Cleo Condoravdi |
LREC | 2 |
| 2004 | What a to-do: studies of task management towards the design of a personal task list managerabstractThis paper reports on the results of studies of task management to support the design of a task list manager. We examined the media used to record and organize to-dos and tracked how tasks are completed over time. Our work shows that, contrary to popular wisdom, people are not poor at prioritizing. Rather, they have well-honed strategies for tackling particular task management challenges. By illustrating what factors influence task completion and how representations function to support task management, we hope to provide a strong foundation for the design of a personal to-do list manager. We also present some preliminary efforts in this direction. Victoria Bellotti, Brinda Dalal, Nathaniel Good, Peter Flynn, Daniel G. Bobrow, Nicolas Ducheneaut |
CHI | 5 |
| 2003 | Information use of service technicians in difficult casesabstractService technicians in the field often come across difficult service problems that are new to them. They have a large number of resources that they can draw on to deal with such problems, including both people and documents. We have undertaken a detailed study of technicians' everyday work, and have discovered two distinct types of information use, reflecting two different problem-solving practices. The less frequently used problem-solving practice is instruction following, where technicians follow company-documented Repair Analysis Procedures (RAPs). The second, more common practice is gleaning, where the information is gathered from many sources -- including other technicians and informal tips, which are documents written by technicians describing their invented solutions to hard service problems. Our observations show how the informational and interface affordances of the system for accessing the tips support their easy incorporation into the gleaning approach for problem solving in difficult cases. We also recommend ways that RAPs can be augmented to provide affordances for gleaning, and more effective instruction following. Yutaka Yamauchi, Jack Whalen, Daniel G. Bobrow |
CHI | 3 |
| 2001 | Preventing existenceabstractWe discuss the treatment of prevention statements in both natural language semantics and knowledge representation, with particular regard to existence entailments. First order representations with an explicit existence predicate are shown to not adequately capture the entailments of prevention statements. A linguistic analysis is framed in a higher order intensional logic, employing a Fregean notion of existence as instantiation of a concept. We discuss how this can be mapped to a Cyc style knowledge representation. Cleo Condoravdi, Richard S. Crouch, John O. Everett, Valeria de Paiva, Reinhard Stolle, Daniel G. Bobrow, Martin van den Berg |
FOIS | 6 |
| 1999 | Model-Based Computing: Developing Flexible Machine Control Software
Markus P. J. Fromherz, Vijay A. Saraswat, Daniel G. Bobrow |
Artif. Intell. | 3 |
| 1998 | Artificial Intelligence 40 Years later
Daniel G. Bobrow, J. Michael Brady |
Artif. Intell. | 1 |
| 1998 | Moving Practice: From Classrooms to MOO Rooms
Vicki L. O'Day, Daniel G. Bobrow, Kimberly Bobrow, Mark Shirley, Billie Hughes, Jim Walters |
Comput. Support. Cooperative Work. | 2 |
| 1998 | Network Community Design: A Social-Technical Design Circle
Vicki L. O'Day, Daniel G. Bobrow, Mark Shirley |
Comput. Support. Cooperative Work. | 2 |
| 1997 | The Next Big Thing: Position Statements
Munindar P. Singh, Daniel G. Bobrow, Michael N. Huhns, Margaret King, Hiroaki Kitano |
IJCAI | 2 |
| 1996 | The Social-Technical Design CircleabstractComputer systems developed for groups of people often have built-in social imperatives, either explicitly or implicitly brought to bear during technology design and use.Even when users are active, ongoing participants in design, conflicts can arise between the social assumptions inscribed in technical mechanisms and those in existing or proposed social practices, resulting in changes to both.This paper describes the joint evolution of tools and social practices in Pueblo, a school-centered learning community supported by a MOO (an Internet-accessible virtual world).Examples illustrate how one can design and use a social practice to simplify a technical implementation, and how one can make a choice in technical implementation to work towards a desirable social goal.Social and technical practices in a network community co-evolve as social values and policies become clearer and as growth in the community pushes it toward changes in the distribution of authority and power. Vicki L. O'Day, Daniel G. Bobrow, Mark Shirley |
CSCW | 2 |
| 1995 | Modeling Time in Hybrid Systems: How Fast Is "Instantaneous"?
Yumi Iwasaki, Adam Farquhar, Vijay A. Saraswat, Daniel G. Bobrow, Vineet Gupta 0001 |
IJCAI | 4 |
| 1993 | Artificial Intelligence in Perspective: A Retrospective on Fifty Volumes of the Artificial Intelligence Journal
Daniel G. Bobrow |
Artif. Intell. | 1 |
| 1992 | Narrow Views, Old Talks, New Beginnings
Brian C. Williams, Olivier Raiman, Daniel G. Bobrow, Mark Shirley, Brian Falkenhainer, Johan de Kleer |
Comput. Intell. | 3 |
| 1991 | Multiple Approaches to Multiple Agent Problem Solving
James A. Hendler, Daniel G. Bobrow, Les Gasser, Carl Hewitt, Marvin Minsky |
IJCAI | 2 |
| 1991 | OOP and AI (Panel)abstractNo abstract available. Mamdouh Ibrahim, Daniel G. Bobrow, Carl Hewitt, Jean-François Perror, Reid G. Smith, Howard E. Shrobe |
OOPSLA | 2 |
| 1991 | Design for Conversation: Lessons from Cognoter
Deborah G. Tatar, Gregg Foster, Daniel G. Bobrow |
Int. J. Man Mach. Stud. | 3 |
| 1990 | Combining Generational and Conservative Garbage Collection: Framework and ImplementationsabstractTwo key ideas in garbage collection are generational collection and conservative pointer-finding. Generational collection and conservative pointer-finding are hard to use together, because generational collection is usually expressed in terms of copying objects, while conservative pointer-finding precludes copying. We present a new framework for defining garbage collectors. When applied to generational collection, it generalizes the notion of younger/older to a partial order. It can describe traditional generational and conservative techniques, and lends itself to combining different techniques in novel ways. We study in particular two new garbage collectors inspired by this framework. Both these collectors use conservative pointer-finding. The first one is based on a rewrite of an existing trace-and-sweep collector to use one level of generation. The second one has a single parameter, which controls how objects are partitioned into generations: the value of this parameter can be changed dynamically with no overhead. We have implemented both collectors and present measurements of their performance in practice. Alan J. Demers, Mark D. Weiser, Barry Hayes, Hans-Juergen Boehm, Daniel G. Bobrow, Scott Shenker |
POPL | 5 |
| 1989 | Panel: Object-Oriented Languages: Premises and Promises
Daniel G. Bobrow, L. Peter Deutsch, Gregor Kiczales, Bjarne Stroustrup |
OOPSLA | 1 |
| 1987 | Logical Secrets
Mark S. Miller, Daniel G. Bobrow, Eric Dean Tribble, Jacob Levy |
ICLP | 2 |
| 1987 | Channels: A Generalization of Streams
Eric Dean Tribble, Mark S. Miller, Kenneth M. Kahn, Daniel G. Bobrow, Curtis Abbott, Ehud Shapiro |
ICLP | 4 |
| 1987 | T. Winograd and F. Flores, Understanding Computers and Cognition: A New Foundation for Design
Mark Stefik, Daniel G. Bobrow |
Artif. Intell. | 2 |
| 1987 | WYSIWIS Revised: Early Experiences with Multiuser InterfacesabstractWYSIWIS (What You See Is What I See) is a foundational abstraction for multiuser interfaces that expresses many of the characteristics of a chalkboard in face-to-face meetings. In its strictest interpretation, it means that everyone can also see the same written information and also see where anyone else is pointing. In our attempts to build software support for collaboration in meetings, we have discovered that WYSIWIS is crucial, yet too inflexible when strictly enforced. This paper is about the design issues and choices that arose in our first generation of meeting tools based on WYSIWIS. Several examples of multiuser interfaces that start from this abstraction are presented. These tools illustrate that there are inherent conflicts between the needs of a group and the needs of individuals, since user interfaces compete for the same display space and meeting time. To help minimize the effect of these conflicts, constraints were relaxed along four key dimensions of WYSIWIS: display space, time of display, subgroup population, and congruence of view. Meeting tools must be designed to support the changing needs of information sharing during process transitions, as subgroups are formed and dissolved, as individuals shift their focus of activity, and as the group shifts from multiple parallel activities to a single focused activity and back again. Mark Stefik, Daniel G. Bobrow, Gregg Foster, Stan Lanning, Deborah G. Tatar |
ACM Trans. Inf. Syst. | 2 |
| 1986 | WYSIWIS revised: early experiences with multi-user interfacesabstractWYSIWIS (What You See Is What I See) is a foundational abstraction for multi-user interfaces that expresses many of the characteristics of a chalkboard in face-to-face meetings. In its strictest interpretation, it means that everyone can see the same written information and also where anyone else is pointing. We present several examples of multi-user interfaces that start from the WYSIWIS abstraction. In our attempts to build software support for collaboration in meetings, we have discovered that WYSIWIS is at once crucial and too inflexible in its strictest sense. WYSIWIS must be relaxed for all our software tools to better accommodate important interactions in meetings. Relaxations to WYSIWIS are characterized in terms of constraints on its four key dimensions: display space, time of display, subgroup population, and congruence of view. Mark Stefik, Daniel G. Bobrow, Stan Lanning, Deborah G. Tatar, Gregg Foster |
CSCW | 2 |
| 1986 | CommonLoops: Merging Lisp and Object-Oriented Programming
Daniel G. Bobrow, Kenneth M. Kahn, Gregor Kiczales, Larry Masinter, Mark Stefik, Frank Zdybel |
OOPSLA | 1 |
| 1986 | Objects in Concurrent Logic Programming LanguagesabstractConcurrent Prolog supports object-oriented programming with a clean semantics and additional programming constructs such as incomplete messages, unification, direct broadcasting, and concurrency synchronization [Shapiro 1983a]. While it provides excellent computational support, we claim it does not provide good notation for expressing the abstractions of object-oriented programming. We describe a preprocessor that remedies this problem. The resulting language, Vulcan, is then used as a behicle for exploring new variants of object-oriented programming which become possible in this framework. Kenneth M. Kahn, Eric Dean Tribble, Mark S. Miller, Daniel G. Bobrow |
OOPSLA | 4 |
| 1986 | Virtual Copies - At the Boundary Between Classes and InstancesabstractKnowledge bases built in object-oriented systems use networks of interconnected objects in their representations. The mechanism described here provides a way to use such a network as a prototype by making virtual copies of it. The virtual copy is created incrementally. Values of instance variables in the virtual copy are inherited from the prototype until locally overridden in the copy, similar to inheritance of defaults between instances and classes in Loops. A virtual copy preserves the topology of the original network. Virtual copies can be made from virtual copies. Alternative implementations of virtual copies allow different tradeoffs in space and lookup time. Virtual copies can be used for building knowledge bases for design, for representing contexts in a problem solving system, and have other uses in ordinary programming. Sanjay Mittal, Daniel G. Bobrow, Kenneth M. Kahn |
OOPSLA | 2 |
| 1985 | Artificial Intelligence - Where Are We?
Daniel G. Bobrow, Patrick J. Hayes |
Artif. Intell. | 1 |
| 1985 | If Prolog is the Answer, What is the Question? or What it Takes to Support AI Programming ParadigmsabstractKnowledge programming, which makes use of the explicit representation and interpretation of knowledge to create intelligent programs, requires specialized languages and tools to help programmers. Prolog, an implementation of a logic programing language, provides some of these tools; it and other languages have been argued to be the "best" way to do such knowledge programming. This paper raises questions which suggest that any single paradigm of programming (e.g., logic programming or object-oriented programming) benefits by being integrated in a single environment with other paradigms of programming. Integration of these paradigms with each other, and within a flexible, user-friendly computing environment is also necessary. Such an environment must provide source level debugging and monitoring facilities, analysis and performance tuning tools, and an extended set of user communication programs. Daniel G. Bobrow |
IEEE Trans. Software Eng. | 1 |
| 1984 | Qualitative Reasoning With Higher-Order Derivatives
Johan de Kleer, Daniel G. Bobrow |
AAAI | 2 |
| 1984 | Qualitative Reasoning about Physical Systems: An Introduction
Daniel G. Bobrow |
Artif. Intell. | 1 |
| 1981 | Layered Networks as a Tool for Software Development
Ira P. Goldstein, Daniel G. Bobrow |
IJCAI | 2 |
| 1980 | Descriptions for a Programming Environment
Ira P. Goldstein, Daniel G. Bobrow |
AAAI | 2 |
| 1980 | Managing Reentrant Structures Using Reference CountsabstractAutomatic storage management requires that one identify storage unreachable by a user's program and return it to free status. One technique maintains a count of the references from user's programs to each cell, since a count of zero implies the storage is unreachable. Reentrant structures are self-referencing; hence no cell in them will have a count of zero, even though the entire structure is unreachable. A modification of standard reference counting can be used to manaage the deallocation of a large class of frequently used reentrant structures, including two-way and circularly linked lists. All the cells of a potentially reentrant structure are considered as part of a single group for deallocation purposes. Information associated with each cell specifies its group membership. Internal references (pointers from one cell of the group to another) are not reference counted. External references to any cell of this group are counted as references to the group as a whole. When the external reference count goes to zero, all the cells of the group can be deallocated. This paper describes several ways of specifying group membership, properties of each implementation, and properties of mutable and immutable group membership. Daniel G. Bobrow |
ACM Trans. Program. Lang. Syst. | 1 |
| 1979 | Compact Encodings of List StructureabstractList structures provide a general mechanism for representing easily changed structured data, but can introduce inefficiencies in the use of space when fields of uniform size are used to contain pointers to data and to link the structure. Empirically determined regularity can be exploited to provide more space-efficient encodings without losing the flexibility inherent in list structures. The basic scheme is to provide compact pointer fields big enough to accommodate most values that occur in them and to provide “escape” mechanisms for exceptional cases. Several examples of encoding designs are presented and evaluated, including two designs currently used in Lisp machines. Alternative escape mechanisms are described, and various questions of cost and implementation are discussed. In order to extrapolate our results to larger systems than those measured, we propose a model for the generation of list pointers and we test the model against data from two programs. We show that according to our model, list structures with compact cdr fields will, as address space grows, continue to be compacted well with a fixed-width small field. Our conclusion is that with a microcodable processor, about a factor of two gain in space efficiency for list structure can be had for little or no cost in processing time. Daniel G. Bobrow, Douglas W. Clark |
ACM Trans. Program. Lang. Syst. | 1 |
| 1977 | Knowledge Representation
Daniel G. Bobrow, Gary G. Hendrix, William A. Martin, John McCarthy 0001, Allen Newell, Roger C. Schank, Brian Cantwell Smith |
IJCAI | 1 |
| 1977 | Experience with KRL-0: One Cycle of a Knowledge Representation Language
Daniel G. Bobrow, Terry Winograd |
IJCAI | 1 |
| 1977 | GUS, A Frame-Driven Dialog System
Daniel G. Bobrow, Ronald M. Kaplan, Martin Kay, Donald A. Norman, Henry S. Thompson, Terry Winograd |
Artif. Intell. | 1 |
| 1976 | A Model for Control Structures for Artificial Intelligence Programming LanguagesabstractNewer programming languages for artificial intelligence extend the class of available control regimes beyond simple hierarchical control. In so doing, a key issue is using a model that clearly exhibits the relation between modules, processes, access environments, and control environments. This paper presents a model which is applicable to diverse languages and presents a set of control primitives which provide a concise basis on which one can define almost all known regimes of control. Daniel G. Bobrow, Ben Wegbreit |
IEEE Trans. Computers | 1 |
| 1973 | A Model for Control Structures for Artificial Intelligence Programming Languages
Daniel G. Bobrow |
IJCAI | 1 |
| 1971 | TENEX, a Paged Time Sharing System for the PDP-10 (Abstract)abstractThis paper appears in the March, 1972, issue of the Communications of the ACM. Its abstract is reproduced below. Daniel G. Bobrow, Jerry D. Burchfiel, Daniel L. Murphy 0001, Raymond S. Tomlinson |
SOSP | 1 |
| 1969 | An Augmented State Transition Network Analysis Procedure
Daniel G. Bobrow, J. Bruce Fraser |
IJCAI | 1 |
| 1964 | List Processing and Extension of Language Facility by EmbeddingabstractThere are two distinct (though not necessarily disjoint) types of language extension. The first is a syntactic extension, in which the class of expressions interpretable within a language is widened. The second is an extension of the functional domain in which operations not previously performable are added to the language. These extensions may be implemented by completely reprogramming the basic language processor (the compiler or interpreter), but such extensions may often be achieved at far less cost by embedding. The authors give an example of each of these two types of extensions by embedding, adding list-processing facilities to the FORTRAN language, and extending the list processing language LISP to facilitate expression and interpretation of string transformations. As an aid to those unfamiliar with list processing, there is a section which reviews this subject. Included are descriptions and explanations of list structures, the various notations used for lists, the basic processes of list processing, and the different notations (machine language, functional, and prototype) used for expressing processing of lists. Daniel G. Bobrow, Joseph Weizenbaum |
IEEE Trans. Electron. Comput. | 1 |