Viewing Control Structures as Patterns of Passing Messages
📜 Abstract
Recent insights into programs viewed as patterns for passing messages have led to the actor model as a useful way to organize computations. In this model we use the notion of actors, which are active, have mail addresses, can carry on their own computations, create more actors via replication, send messages to other actors, and make such decisions as which computations to carry on in response to received messages. This paper presents some of the basic concepts and examples.
✨ Summary
The paper “Viewing Control Structures as Patterns of Passing Messages” by Carl Hewitt, published in 1977, introduces the actor model as a foundational concept for understanding computations via message-passing. It describes how actors, as independent computational entities, can interact through communication, offering a powerful way to design concurrent systems.
Impact on further research is notably through the influence this model had in the development of concurrent programming languages and systems. For example, the actor model is a conceptual basis for languages like Erlang, which is widely used in systems requiring high concurrency, such as telecommunications. The programming languages Scala and Akka also incorporate the actor model into their frameworks.
While extensive web searches reveal that specific academic papers may not directly cite this specific paper, the actor model itself has been extensively cited and used, particularly in studies related to concurrent and parallel programming. The influence of Carl Hewitt’s work is reflected in many modern concurrent computing practices and distributed systems architecture.
Key references for further reading include papers on the actor model itself and its applications in modern programming: - Actor model on Wikipedia - Erlang’s application of the actor model - Akka and actor-based concurrency