License:
Creative Commons Attribution 4.0 International license (CC BY 4.0)
When quoting this document, please refer to the following
DOI: 10.4230/DARTS.9.2.9
URN: urn:nbn:de:0030-drops-182492
URL: https://drops.dagstuhl.de/opus/volltexte/2023/18249/
Barwell, Adam D. ;
Hou, Ping ;
Yoshida, Nobuko ;
Zhou, Fangyi
Designing Asynchronous Multiparty Protocols with Crash-Stop Failures (Artifact)
pdf-format:
|
|
artifact-format:
|
|
Evaluation Policy
The artifact has been evaluated as described in the ECOOP 2023 Call for Artifacts and the ACM Artifact Review and Badging Policy.
Abstract
We introduce Teatrino, a toolchain that supports handling multiparty protocols with crash-stop failures and crash-handling behaviours. Teatrino accompanies the novel MPST theory in the related article, and enables users to generate fault-tolerant protocol-conforming Scala code from Scribble protocols. Local types are projected from the global protocol, enabling correctness-by-construction, and are expressed directly as Scala types via the Effpi concurrency library. Teatrino extends both Scribble and Effpi with support for crash-stop behaviour. The generated Scala code is executable and can be further integrated with existing systems. The accompanying theory in the related article guarantees deadlock-freedom and liveness properties for failure handling protocols and their implementation. This artifact includes examples, extended from both session type and distributed systems literature, featured in the related article.
BibTeX - Entry
@Article{barwell_et_al:DARTS.9.2.9,
author = {Barwell, Adam D. and Hou, Ping and Yoshida, Nobuko and Zhou, Fangyi},
title = {{Designing Asynchronous Multiparty Protocols with Crash-Stop Failures (Artifact)}},
pages = {9:1--9:3},
journal = {Dagstuhl Artifacts Series},
ISSN = {2509-8195},
year = {2023},
volume = {9},
number = {2},
editor = {Barwell, Adam D. and Hou, Ping and Yoshida, Nobuko and Zhou, Fangyi},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/opus/volltexte/2023/18249},
URN = {urn:nbn:de:0030-drops-182492},
doi = {10.4230/DARTS.9.2.9},
annote = {Keywords: Session Types, Concurrency, Failure Handling, Code Generation, Scala}
}
Keywords: |
|
Session Types, Concurrency, Failure Handling, Code Generation, Scala |
Collection: |
|
DARTS, Volume 9, Issue 2, Special Issue of the 37th European Conference on Object-Oriented Programming (ECOOP 2023) |
Issue Date: |
|
2023 |
Date of publication: |
|
11.07.2023 |