Carl Hewitt

dblp:h/CarlHewitt · also Carl E. Hewitt · DBLP profile ↗
← Back
20ranked-venue papers
12as first author
0since 2021 · last 1991
—ORCID · none

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

Artificial intelligence and machine learning · 10 · 8 first-authorGraphics, computer vision, multimedia, augmented reality and games · 9 · 6 first-authorSoftware engineering, systems software and programming languages · 5 · 2 first-authorHuman-computer interaction and ubiquitous computing · 3 · 1 first-authorDatabases, data management, data science and information retrieval · 1 · 1 first-authorTheory of computation · 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
8 papers
Multi-agent systems · 67% Knowledge representation and reasoning · 31% Motion planning and robot control · 2%
Software engineering, system software, and programming languages
7 papers
Concurrent programming · 85% Programming languages and type systems · 11% Empirical software engineering · 4%
Computer architecture, parallel and distributed computing, and storage systems
4 papers
Distributed systems · 100%

Topics — the 20 heaviest of 25, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Knowledge, reasoning and agents › Multi-agent systems
distributed problem solving
0.011991
Multiple Approaches to Multiple Agent Problem Solving · IJCAI 1991
Knowledge, reasoning and agents › Multi-agent systems › distributed problem solving
multi-agent problem solving
0.011991
Multiple Approaches to Multiple Agent Problem Solving · IJCAI 1991
Concurrent programming › concurrency models
actor model
0.041977
Viewing Control Structures as Patterns of Passing Messages · Artif. Intell. 1977
Parallelism and Synchronization in Actor Systems · POPL 1977
Actor Semantics of Planner-73 · POPL 1975
Concurrent programming
synchronization
0.031979
Specification and Proof Techniques for Serializers · IEEE Trans. Software Eng. 1979
Parallelism and Synchronization in Actor Systems · POPL 1977
Actor Semantics of Planner-73 · POPL 1975
Concurrent programming
message passing
0.031977
Viewing Control Structures as Patterns of Passing Messages · Artif. Intell. 1977
Parallelism and Synchronization in Actor Systems · POPL 1977
Actor Induction and Meta-Evaluation · POPL 1973
Concurrent programming › synchronization
monitors
0.021979
Specification and Proof Techniques for Serializers · IEEE Trans. Software Eng. 1979
Parallelism and Synchronization in Actor Systems · POPL 1977
Knowledge, reasoning and agents › Knowledge representation and reasoning
description logic
0.011980
Knowledge Embedding in the Description System Omega · AAAI 1980
Knowledge, reasoning and agents › Knowledge representation and reasoning › semantic representation › distributed knowledge representation
knowledge embedding
0.011980
Knowledge Embedding in the Description System Omega · AAAI 1980
Distributed systems
distributed coordination
0.011979
Specification and Proof Techniques for Serializers · IEEE Trans. Software Eng. 1979
Distributed systems
distributed system modeling
0.011977
Modelling Distributed Systems · IJCAI 1977
Programming languages and type systems › language semantics
formal semantics
0.011975
Actor Semantics of Planner-73 · POPL 1975
Programming languages and type systems › computational effects
side effects
0.011975
Actor Semantics of Planner-73 · POPL 1975
Concurrent programming
concurrency models
0.011973
A Universal Modular ACTOR Formalism for Artificial Intelligence · IJCAI 1973
Empirical software engineering › software engineering research methodology
meta-evaluation
0.011973
Actor Induction and Meta-Evaluation · POPL 1973
Knowledge, reasoning and agents › Knowledge representation and reasoning
ontology
0.011980
Knowledge Embedding in the Description System Omega · AAAI 1980
Knowledge, reasoning and agents › Knowledge representation and reasoning › knowledge structures › procedural knowledge
procedural knowledge representation
0.011971
Procedural Embedding of knowledge in Planner · IJCAI 1971
Knowledge, reasoning and agents › Knowledge representation and reasoning
automated reasoning and model checking
0.011969
PLANNER: A Language for Proving Theorems in Robots · IJCAI 1969
Robotics › Motion planning and robot control
robot planning
0.011969
PLANNER: A Language for Proving Theorems in Robots · IJCAI 1969
Knowledge, reasoning and agents › Knowledge representation and reasoning › automated reasoning
theorem proving
0.011969
PLANNER: A Language for Proving Theorems in Robots · IJCAI 1969
Concurrent programming
parallel programming models
0.011978
Dynamic graphics using quasi parallelism · SIGGRAPH 1978

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

conceptual analysis · 0.0actor model · 0.0specification language · 0.0logic programming · 0.0proof techniques · 0.0proof technique · 0.0
YearPublicationVenuePosition
1991 Multiple Approaches to Multiple Agent Problem Solving
James A. Hendler, Daniel G. Bobrow, Les Gasser, Carl Hewitt, Marvin Minsky
IJCAI4
1991 OOP and AI (Panel)
abstract
No abstract available.
Mamdouh Ibrahim, Daniel G. Bobrow, Carl Hewitt, Jean-François Perror, Reid G. Smith, Howard E. Shrobe
OOPSLA3
1991 Open Information Systems Semantics for Distributed Artificial Intelligence
Carl Hewitt
Artif. Intell.1
1991 DAI betwixt and between: from 'intelligent agents' to open systems science
abstract
The authors discuss the development of open systems science (OSS) beginning with its roots in the fundamentals of concurrency. The nature of actors., which are the primitives of concurrency, is considered. The aim of OSS is to provide a foundation for effective technological solutions to the complex problems of large-scale open systems by providing a scientific discipline that focuses on issues of robustness, manageability, and scalability. In the large-scale open systems of the future, the focus with shift from centralized systems toward decentralized ones, with an emphasis on conflict processing. The evolution of this paradigm presents some challenges and some fruitful new ideas for distributed artificial intelligence that are discussed.>
Carl Hewitt, Jeff Inman
IEEE Trans. Syst. Man Cybern.1
1986 Offices Are Open Systems
abstract
This paper is intended as a contribution to analysis of the implications of viewing offices as open systems. It takes a prescriptive stance on how to establish the information-processing foundations for taking action and making decisions in office work from an open systems perspective. We propose due process as a central activity in organizational information processing. Computer systems are beginning to play important roles in mediating the ongoing activities of organizations. We expect that these roles will gradually increase in importance as computer systems take on more of the authority and responsibility for ongoing activities. At the same time we expect computer systems to acquire more of the characteristics and structure of human organizations.
Carl Hewitt
ACM Trans. Inf. Syst.1
1985 Concurrent Programming Using Actors: Exploiting large-Scale Parallelism
Gul A. Agha, Carl Hewitt
FSTTCS2
1983 Analyzing the Roles of Descriptions and Actions in Open Systems
Carl Hewitt, Peter de Jong
AAAI1
1981 The Scientific Community Metaphor
abstract
Scientific communities have proven to be extremely successful at solving problems. They are inherently parallel systems and their macroscopic nature makes them amenable to careful study. In this paper the character of scientific research is examined drawing on sources in the philosophy and history of science. We maintain that the success of scientific research depends critically on its concurrency and pluralism. A variant of the language Ether is developed that embodies notions of concurrency necessary to emulate some of the problem solving behavior of scientific communities. Capabilities of scientific communities are discussed in parallel with simplified models of these capabilities in this language.
William A. Kornfeld, Carl Hewitt
IEEE Trans. Syst. Man Cybern.2
1980 Knowledge Embedding in the Description System Omega
Carl Hewitt, Giuseppe Attardi, Maria Simi
AAAI1
1979 Specification and Proof Techniques for Serializers
abstract
This paper presents a specification language, implementation mechanism, and proof techniques for problems involving the arbitration of concurrent requests to shared protected resources whose integrity must be preserved. This mechanism is the serializer, which may be described as a kind of protection mechanism, in that it prevents improper orders of access to a protected resource. Serializers are a more structured form of the monitor mechanism of Brinch Hansen and Hoare.
Carl Hewitt, Russell R. Atkinson
IEEE Trans. Software Eng.1
1978 Dynamic graphics using quasi parallelism
abstract
Dynamic computer graphics is best represented as several processes operating in parallel. Full parallel processing, however, entails much complex mechanism making it difficult to write simple, intuitive programs for generating computer animation. What is presented in this paper is a simple means of attaining the appearance of parallelism and the ability to program the graphics in a conceptually parallel fashion without the complexity of a more general parallel mechanism. Each entity on the display screen can be independently programmed to move, turn, change size, color or shape and to interact with other entities.
Kenneth M. Kahn, Carl Hewitt
SIGGRAPH2
1977 Modelling Distributed Systems
Akinori Yonezawa, Carl Hewitt
IJCAI2
1977 Parallelism and Synchronization in Actor Systems
abstract
This paper presents a mechanism for the arbitration of parallel requests to shared resources. This mechanism is the serialize, which may be described as a kind of protection mechanism, in that it prevents improper orders of access to a protected resource. The mechanism is a generalization and improvement of the monitor mechanism of Brinch-Hansen and Hoare.Serializers attempt to systematize and abstract desirable structural features of synchronization control structure into a coherent language construct. They represent an improvement in the modularity of synchronization over monitors in several respects. Monitors synchronize requests by providing a pair of operations for each request type [examples are STARTREAD/ENDREAD and STARTWRITE/ENDWRITE for the readers-writers problems]. Such a pair of operations must be used in a certain order for the synchronization to work properly, yet nothing in the monitors construct enforces this use. Serializers incorporate this structural aspect of synchronization in a unified mechanism to guarantee proper check-in and check-out. In scheduling access to a protected resource, it is often desired to wait in a queue for a certain condition before it continues execution. Monitors require that a process waiting in a queue will remain dormant forever, unless another process explicitly signals to the dormant process that it should continue. Serializers improve the modularity of synchronization by providing that the condition for resuming execution must be explicitly stated when a process enters a queue making it it unnecessary for processes to signal other processes. Each process determines for itself the conditions required for its further execution.The behavior of a serializer is defined using the actor message-passing model of computation. Different versions of the "readers-writers" problems are used to illustrate how the structure of a serializer corresponds in a natural way to the structure of the arbitration problem to be solved. The correspondence makes it easier to synthesize a scheduler from behavioral specifications and to verify that an implementation satisfies its specifications.No claim is made for the "completeness" of the serializer mechanism, beyond showing that semaphores can be implemented using serializers. Further, no "complete" solution is proposed to the "no-starvation" specification which requires that a resource reply to each request which it receives. Rather, it is shown for some simple examples that serializers represent a step toward better structuring of parallel access to shared resources, and that proofs that starvation is impossible for these examples are easier with serializers than with some of the currently existing mechanisms for controlling parallel access to resources.
Russell R. Atkinson, Carl Hewitt
POPL2
1977 Viewing Control Structures as Patterns of Passing Messages
Carl Hewitt
Artif. Intell.1
1975 How To Use What You Know
Carl Hewitt
IJCAI1
1975 Actor Semantics of Planner-73
abstract
Work on PLANNER-73 and actors has led to the development of a basis for semantics of programming languages. Its value in describing programs with side-effects, parallelism, and synchronization is discussed. Formal definitions are written and explained for sequences, cells, and a simple synchronization primitive. In addition there is discussion of the implications of actor semantics for the controversy over elimination of side-effects.
Irene Greif, Carl Hewitt
POPL2
1973 A Universal Modular ACTOR Formalism for Artificial Intelligence
Carl Hewitt, Peter Boehler Bishop, Richard Steiger
IJCAI1
1973 Actor Induction and Meta-Evaluation
abstract
The PLANNER project is continuing research in natural and effective means for embedding knowledge in procedures. In the course of this work we have succeeded in unifying the formalism around one fundamental concept: the ACTOR. Intuitively, an ACTOR is an active agent which plays a role on cue according to a script. We use the ACTOR metaphor to emphasize the inseparability of control and data flow in our model. Data structures, functions, semaphores, monitors, ports, descriptions, Quillian nets, logical formulae, numbers, identifiers, demons, processes, contexts, and data bases can all be shown to be special cases of actors. All of the above are objects with certain useful modes of behavior. Our formalism shows how all of these modes of behavior can be defined in terms of one kind of behavior: sending messages to actors. An actor is always invoked uniformly in exactly the same way regardless of whether it behaves as a recursive function, data structure, or process.
Carl Hewitt, Peter Boehler Bishop, Irene Greif, Brian Cantwell Smith, Todd Matson, Richard Steiger
POPL1
1971 Procedural Embedding of knowledge in Planner
Carl Hewitt
IJCAI1
1969 PLANNER: A Language for Proving Theorems in Robots
Carl Hewitt
IJCAI1