Affiliation:
1. Imperial College London, London, United Kingdom
Abstract
Multiparty session types enforce structured safe communications between several participants, as long as their number is fixed when the session starts. In order to handle common distributed interaction patterns such as peer-to-peer protocols or cloud algorithms, we propose a new role-based multiparty session type theory where roles are defined as classes of local behaviours that an arbitrary number of participants can dynamically join and leave. We offer programmers a polling operation that gives access to the current set of a role's participants in order to fork processes. Our type system with universal types for polling can handle this dynamism and retain type safety. A multiparty locking mechanism is introduced to provide communication safety, but also to ensure a stronger progress property for joining participants that has never been guaranteed in previous systems. Finally, we present some implementation mechanisms used in our prototype extension of ML.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference34 articles.
1. Web Services Choreography Description Language. http://www. w3.org/2002/ws/chor/. Web Services Choreography Description Language. http://www. w3.org/2002/ws/chor/.
2. Advanced Message Queueing Protocols. http://www.amqp.org/confluence/display/AMQP/Advanced+Message+Queuing+Pr%otocol. Advanced Message Queueing Protocols. http://www.amqp.org/confluence/display/AMQP/Advanced+Message+Queuing+Pr%otocol.
3. On-line Appendix of this paper. http://www.doc.ic.ac.uk/ ~pmalo/dynamic. On-line Appendix of this paper. http://www.doc.ic.ac.uk/ ~pmalo/dynamic.
4. Global Progress in Dynamically Interleaved Multiparty Sessions
5. Cryptographic Protocol Synthesis and Verification for Multiparty Sessions
Cited by
40 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Session Types with Multiple Senders Single Receiver;Dependable Software Engineering. Theories, Tools, and Applications;2023-12-15
2. Protocol Conformance with Choreographic PlusCal;Theoretical Aspects of Software Engineering;2023
3. A Predicate Transformer for Choreographies;Programming Languages and Systems;2022
4. ST4MP: A Blueprint of Multiparty Session Typing for Multilingual Programming;Leveraging Applications of Formal Methods, Verification and Validation. Verification Principles;2022
5. Exploring Type-Level Bisimilarity towards More Expressive Multiparty Session Types;Programming Languages and Systems;2020