2016
DOI: 10.4204/eptcs.223.3
|View full text |Cite
|
Sign up to set email alerts
|

An Erlang Implementation of Multiparty Session Actors

Abstract: By requiring co-ordination to take place using explicit message passing instead of relying on shared memory, actor-based programming languages have been shown to be effective tools for building reliable and fault-tolerant distributed systems. Although naturally communication-centric, communication patterns in actor-based applications remain informally specified, meaning that errors in communication are detected late, if at all. Multiparty session types are a formalism to describe, at a global level, the inte… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
20
0

Year Published

2016
2016
2024
2024

Publication Types

Select...
2
2
2

Relationship

0
6

Authors

Journals

citations
Cited by 22 publications
(20 citation statements)
references
References 18 publications
0
20
0
Order By: Relevance
“…The work [16] presents a design and an implementation of a runtime verification for Erlang where interactions are checked against Scribble specifications. The framework allows a session to continue when a failed role is not involved in the remainder of the session.…”
Section: Implementations Of Recovery In Erlangmentioning
confidence: 99%
“…The work [16] presents a design and an implementation of a runtime verification for Erlang where interactions are checked against Scribble specifications. The framework allows a session to continue when a failed role is not involved in the remainder of the session.…”
Section: Implementations Of Recovery In Erlangmentioning
confidence: 99%
“…Programming with session types can be understood and used efficiently by real world programmers. All papers extending various programming languages [17,3,11,9,13,16] assume that this is the case. However, session types add another layer of complexity to programming.…”
Section: Hypothesesmentioning
confidence: 99%
“…They have proved popular, finding their way into various programming languages and tools. As of late there has been an emphasis on implementations, be that in existing languages: C [17], Erlang [3], Go [16], Java [11,9], to name just a few, or in new languages: Scribble, Links [13], SILL. The session type community certainly believes it to be worthwhile to add session types to as many languages as possible.…”
Section: Introductionmentioning
confidence: 99%
“…It relies on a special-purpose run-time locking mechanism to block dynamically joining participants until some safe entry point, hindering its use in existing applications. Implementations of sessions in Python [15] and Erlang [19] have used a notion of subsession [14] as a coarse-grained mechanism for dynamically introducing participants. The idea is to launch a separate child session, by the heavyweight atomic multiparty initiation, involving a subset of the current participants along with other new participants; unlike this paper, where additional roles enter the same, running session by the connect and accept actions between the two relevant participants.…”
Section: Related Work and Concluding Remarksmentioning
confidence: 99%
“…Much research, both multiparty and the special case of binary sessions, has focused on addressing (b) in various ways: extending existing languages to support static session typing (e.g., Links [32]) via pre-processing tools (Java [25,45]), embedding into existing languages via encodings (Haskell [40,26], Rust [27]), dynamic session typing by runtime monitoring (Python [15], Erlang [19]), hybrid (part static, part dynamic) approaches (Java [24], Scala [42], ML [36]), and code generation (MPI/C [35]). …”
Section: Introductionmentioning
confidence: 99%