Multiparty asynchronous session types

被引:118
作者
Honda, Kohei [1 ]
Yoshida, Nobuko [2 ]
Carbone, Marco [1 ]
机构
[1] Univ London, London WC1E 7HU, England
[2] Univ London Imperial Coll Sci Technol & Med, London SW7 2AZ, England
基金
英国工程与自然科学研究理事会;
关键词
theory; types; design; communications; multiparty; structured programming; session types; mobile processes; causality; choreography; LANGUAGE; SYSTEM;
D O I
10.1145/1328897.1328472
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Communication is becoming one of the central elements in software development. As a potential typed foundation for structured communication-centred programming, session types have been studied over the last decade for a wide range of process calculi and programming languages, focussing on binary (two-party) sessions. This work extends the foregoing theories of binary session types to multiparty, asynchronous sessions, which often arise in practical communication-centred applications. Presented as a typed calculus for mobile processes, the theory introduces a new notion of types in which interactions involving multiple peers are directly abstracted as a global scenario. Global types retain a friendly type syntax of binary session types while capturing complex causal chains of multiparty asynchronous interactions. A global type plays the role of a shared agreement among communication peers, and is used as a basis of efficient type checking through its projection onto individual peers. The fundamental properties of the session type discipline such as communication safety, progress and session fidelity are established for general n-party asynchronous interactions.
引用
收藏
页码:273 / 284
页数:12
相关论文
共 50 条
[21]   Communication-Safe Web Programming in TypeScript with Routed Multiparty Session Types [J].
Miu, Anson ;
Ferreira, Francisco ;
Yoshida, Nobuko ;
Zhou, Fangyi .
PROCEEDINGS OF THE 30TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON COMPILER CONSTRUCTION, CC 2021, 2021, :94-106
[22]   TIMEOUT ASYNCHRONOUS SESSION TYPES: SAFE ASYNCHRONOUS MIXED-CHOICE FOR TIMED INTERACTIONS [J].
Pears, Jonah ;
Bocchi, Laura ;
Murgia, Maurizio ;
King, Andy .
LOGICAL METHODS IN COMPUTER SCIENCE, 2025, 21 (03)
[23]   Practical interruptible conversations: distributed dynamic verification with multiparty session types and Python [J].
Romain Demangeon ;
Kohei Honda ;
Raymond Hu ;
Rumyana Neykova ;
Nobuko Yoshida .
Formal Methods in System Design, 2015, 46 :197-225
[24]   Practical interruptible conversations: distributed dynamic verification with multiparty session types and Python']Python [J].
Demangeon, Romain ;
Honda, Kohei ;
Hu, Raymond ;
Neykova, Rumyana ;
Yoshida, Nobuko .
FORMAL METHODS IN SYSTEM DESIGN, 2015, 46 (03) :197-225
[25]   Parameterized, concurrent session types for asynchronous multi-actor interactions [J].
Charalambides, Minas ;
Dinges, Peter ;
Agha, Gul .
SCIENCE OF COMPUTER PROGRAMMING, 2016, 115 :100-126
[26]   Precise Subtyping for Asynchronous Multiparty Sessions [J].
Ghilezan, Silvia ;
Pantovic, Jovanka ;
Prokic, Ivan ;
Scalas, Alceste ;
Yoshida, Nobuko .
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2021, 5
[27]   Precise Subtyping for Asynchronous Multiparty Sessions [J].
Ghilezan, Silvia ;
Pantovic, Jovanka ;
Prokic, Ivan ;
Scalas, Alceste ;
Yoshida, Nobuko .
ACM TRANSACTIONS ON COMPUTATIONAL LOGIC, 2023, 24 (02)
[28]   A Logical Interpretation of Asynchronous Multiparty Compatibility [J].
Carbone, Marco ;
Marin, Sonia ;
Schurmann, Carsten .
LOGIC-BASED PROGRAM SYNTHESIS AND TRANSFORMATION, LOPSTR 2023, 2023, 14330 :99-117
[29]   Asynchronous Timed Session Types From Duality to Time-Sensitive Processes [J].
Bocchi, Laura ;
Murgia, Maurizio ;
Vasconcelos, Vasco Thudichum ;
Yoshida, Nobuko .
PROGRAMMING LANGUAGES AND SYSTEMS, ESOP 2019: 28TH EUROPEAN SYMPOSIUM ON PROGRAMMING, 2019, 11423 :583-610
[30]   Session types revisited [J].
Dardha, Ornela ;
Giachino, Elena ;
Sangiorgi, David .
INFORMATION AND COMPUTATION, 2017, 256 :253-286