Abstract
The actor model provides high-level concurrency abstractions to coordinate simultaneous computations by message passing. Languages implementing the actor model such as Erlang commonly only support single-headed pattern matching over received messages. We propose and design an extension of Erlang style actors with receive clauses containing multi-headed message patterns. Patterns may be non-linear and constrained by guards. We provide a number of examples to show the usefulness of the extension. We also explore the design space for multi-headed message matching semantics, for example first-match and rule priority-match semantics. The various semantics are inspired by the multi-set constraint matching semantics found in Constraint Handling Rules. This provides us with a formal model to study actors with multi-headed message receive patterns. The system can be implemented efficiently and we have built a prototype as a library-extension to Haskell.
Originalsprog | Engelsk |
---|---|
Bogserie | Lecture Notes in Computer Science |
Sider (fra-til) | 315-330 |
ISSN | 0302-9743 |
Status | Udgivet - 2008 |
Begivenhed | 10th international conference on Coordination Models and Languages (Coordination'08) - Oslo, Norge Varighed: 4 jun. 2008 → 6 jun. 2008 Konferencens nummer: 10 |
Konference
Konference | 10th international conference on Coordination Models and Languages (Coordination'08) |
---|---|
Nummer | 10 |
Land/Område | Norge |
By | Oslo |
Periode | 04/06/2008 → 06/06/2008 |
Emneord
- Actor model
- Concurrency
- Message passing
- Pattern matching
- Multi-headed patterns