VIEWING CONTROL STRUCTURES as PATTERNS of PASSING MESSAGES

VIEWING CONTROL STRUCTURES as PATTERNS of PASSING MESSAGES

DECEMBER 1976 | Carl Hewitt
This paper discusses the actor model of computation and its application to modeling intelligence as a society of communicating knowledge-based problem-solving experts. The paper presents an approach to modeling intelligence in terms of a society of experts, where each expert can be viewed as a society that can be further decomposed. The paper investigates the communication mechanisms needed for effective problem-solving by a society of experts and the conventions of discourse that make this possible. It demonstrates how actor message passing can be used to understand control structures as patterns of passing messages in serial processing. The paper is a prerequisite for successors which treat issues of parallelism and communication within the framework established here. The ability to analyze or synthesize any kind of control structure as a pattern of passing messages among the members of a society provides an important tool for understanding control structures. The paper shows how to characterize familiar control structures such as iteration and recursion in these terms. The paper presents a methodology for specifying the behavior of actors (objects) in terms that are natural to the semantics of the causal and incidental relationships among the objects. The paper develops a programming methodology consisting of the following activities: deciding on the natural kinds of actors to have in the system, deciding for each kind of actor what kind of messages it should receive, and deciding for each kind of actor what it should do when it receives each kind of message. The paper discusses the components of the actor model, including a method for the rigorous specification of behaviors, a system implemented in terms of actor message passing, a mathematical theory of computation, and event diagrams for displaying relationships among the events of an actor computation. The paper introduces event diagrams as a further development of a graphical notation used by Richard Steiger for displaying relationships among the events of an actor computation. The paper uses them to show the causal and knowledge relationships that characterize simple control structures such as iteration and recursion as patterns of passing messages. The paper discusses the actor control structure, including the introduction to event diagrams, actor transmission, messengers, envelopes, request and reply, recursion, and iteration. The paper compares recursion and iteration, and discusses the efficiency and intelligibility of actor systems. The paper also discusses generators and their implementation in PLASMA. The paper concludes with a discussion of future work and applications.This paper discusses the actor model of computation and its application to modeling intelligence as a society of communicating knowledge-based problem-solving experts. The paper presents an approach to modeling intelligence in terms of a society of experts, where each expert can be viewed as a society that can be further decomposed. The paper investigates the communication mechanisms needed for effective problem-solving by a society of experts and the conventions of discourse that make this possible. It demonstrates how actor message passing can be used to understand control structures as patterns of passing messages in serial processing. The paper is a prerequisite for successors which treat issues of parallelism and communication within the framework established here. The ability to analyze or synthesize any kind of control structure as a pattern of passing messages among the members of a society provides an important tool for understanding control structures. The paper shows how to characterize familiar control structures such as iteration and recursion in these terms. The paper presents a methodology for specifying the behavior of actors (objects) in terms that are natural to the semantics of the causal and incidental relationships among the objects. The paper develops a programming methodology consisting of the following activities: deciding on the natural kinds of actors to have in the system, deciding for each kind of actor what kind of messages it should receive, and deciding for each kind of actor what it should do when it receives each kind of message. The paper discusses the components of the actor model, including a method for the rigorous specification of behaviors, a system implemented in terms of actor message passing, a mathematical theory of computation, and event diagrams for displaying relationships among the events of an actor computation. The paper introduces event diagrams as a further development of a graphical notation used by Richard Steiger for displaying relationships among the events of an actor computation. The paper uses them to show the causal and knowledge relationships that characterize simple control structures such as iteration and recursion as patterns of passing messages. The paper discusses the actor control structure, including the introduction to event diagrams, actor transmission, messengers, envelopes, request and reply, recursion, and iteration. The paper compares recursion and iteration, and discusses the efficiency and intelligibility of actor systems. The paper also discusses generators and their implementation in PLASMA. The paper concludes with a discussion of future work and applications.
Reach us at info@study.space