Proceedings of the 27th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming 2022
DOI: 10.1145/3503221.3508404
|View full text |Cite
|
Sign up to set email alerts
|

Deadlock-free asynchronous message reordering in rust with multiparty session types

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
4
0

Year Published

2022
2022
2024
2024

Publication Types

Select...
4
3
1

Relationship

1
7

Authors

Journals

citations
Cited by 17 publications
(6 citation statements)
references
References 42 publications
0
4
0
Order By: Relevance
“…Their approach does not address the issues in Section 1, though, whereas our approach does. Previous attempts to address the issue of "mixed static/dynamic checks" either target a programming language with a stronger type system (Rust) [22,8,23,9], or adopt callback-style APIs in the specific context of event-based programming [35,34]. In contrast, our approach does not rely on (the strength of) the type system of the targeted programming language, and it supports traditional procedural/object-oriented programming.…”
Section: Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…Their approach does not address the issues in Section 1, though, whereas our approach does. Previous attempts to address the issue of "mixed static/dynamic checks" either target a programming language with a stronger type system (Rust) [22,8,23,9], or adopt callback-style APIs in the specific context of event-based programming [35,34]. In contrast, our approach does not rely on (the strength of) the type system of the targeted programming language, and it supports traditional procedural/object-oriented programming.…”
Section: Discussionmentioning
confidence: 99%
“…A premier approach to apply the MPST method in combination with mainstream programming languages is based on API generation (Figure 5); it is used in the majority of MPST tools, including Scribble [16,17], its extensions [32,5,25,22,8,23,9,27,35], StMungo [21], νScr [34], mpstpp [20], and Pompset [6]. The main ideas, first conceived by Deniélou/Hu/Yoshida and pursued in Scribble, follow two insights: (a) local types can be interpreted as deterministic finite automata (DFA) [10,11], where every transition models a send/receive action; (b) DFAs can be encoded as object-oriented application programming interfaces (API) [16,17], where classes and methods model states and transitions.…”
mentioning
confidence: 99%
“…Intuitively, subtyping studies how to give freedom in the implementation while preserving the correctness properties. The intra-role indistinguishability relation ≈, which allows to reorder receive events for a role, resembles subtyping to some extent, e.g., the work by Cutner et al [25]. A detailed investigation of this relation is beyond the scope of this work.…”
Section: Implementability With Intra-role Reordering Is Undecidablementioning
confidence: 95%
“…The top-down approach enables correctness-byconstruction: a developer provides a global description for the whole protocol; by projecting the global protocol, APIs are generated from local CFSMs, which ensure the safe implementation of each participant. MPSTs toolchains that take the top-down approach have seen multiple implementations and targeted a variety of mainstream programming languages, such as (in no particular order) Java [23,24,30], OCaml [26], Go [8], Scala [42,46], F# [36], F [48] and Rust [10,31]. Like CAScr, most of the above implementations rely on the Scribble protocol description language [20,37,47] (http://www.scribble.org, https://nuscr.dev/).…”
Section: Related Workmentioning
confidence: 99%