Abstract
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 generaln-party asynchronous interactions.
- Eduardo Bonelli and Adriana Compagnoni. Multipoint session types for a distributed calculus. In TGC07, LNCS. Springer, 2008. To appear. Google Scholar
Digital Library
- Marco Carbone, Kohei Honda, Nobuko Yoshida, Robin Milner, Gary Brown, and Steve Ross-Talbot. A theoretical basis of communication--centred concurrent programming. To be published by W3C. Available at www.dcs.qmul.ac.uk/~carbonem/cdlpaper, 2006.Google Scholar
- Marco Carbone, Kohei Honda, and Nobuko Yoshida. Structured Communication--Centred Programming for Web Services. In ESOP'07, volume 4421 of LNCS, pages 2--17. Springer, 2007. Google Scholar
Digital Library
- Mario Coppo, Mariangiola Dezani-Ciancaglini, and Nobuko Yoshida. Asynchronous Session Types and Progress for Object--Oriented Languages. In FMOODS'07, volume 4468 of LNCS, pages 1--31, 2007. Google Scholar
Digital Library
- Ricardo Corin, Pierre-Malo Denielou, Cedric Fournet, Karthikeyan Bhargavan, and James Leifer. Secure Implementations for Typed Session Abstractions. In CFS'07. IEEE--CS Press, 2007. Google Scholar
Digital Library
- Mariangiola Dezani-Ciancaglini, Dimitris Mostrous, Nobuko Yoshida, and Sophia Drossopoulou. Session Types for Object-Oriented Languages. In ECOOP'06, volume 4067 of LNCS, pages 328--352. Springer, 2006. Google Scholar
Digital Library
- Mariangiola Dezani-Ciancaglini, Ugo de' Liguoro, and Nobuko Yoshida. On Progress for Structured Communications. In TGC07, LNCS. Springer, 2008. To appear. Google Scholar
Digital Library
- Manuel Fähndrich, Mark Aiken, Chris Hawblitzel, Orion Hodson, Galen C. Hunt, James R. Larus, and Steven Levi. Language Support for Fast and Reliable Message-based Communication in Singularity OS. In EuroSys2006, ACM SIGOPS, pages 177--190. ACM Press, 2006. Google Scholar
Digital Library
- Pablo Garralda, Adriana Compagnoni, and Mariangiola Dezani-Ciancaglini. BASS: Boxed Ambients with Safe Sessions. In PPDP'06, pages 61--72. ACM Press, 2006. Google Scholar
Digital Library
- Simon Gay and Malcolm Hole. Subtyping for Session Types in the Pi-Calculus. Acta Informatica, 42(2/3):191--225, 2005.Google Scholar
Cross Ref
- Simon Gay and Vasco T. Vasconcelos. Asynchronous functional session types. TR 2007-251, University of Glasgow, may 2007.Google Scholar
- Jean-Yves Girard. Linear logic. TCS, 50:1-102, 1987. Google Scholar
Digital Library
- Matthew Hennessy. A Distributed Pi-Calculus. CUP, 2007. Google Scholar
Digital Library
- Kohei Honda and Mario Tokoro. An object calculus for asynchronous communication. In Proceedings of ECOOP'91, 1991. Google Scholar
Digital Library
- Kohei Honda, Vasco T. Vasconcelos, and Makoto Kubo. Language primitives and type disciplines for structured communication-based programming. In ESOP'98, volume 1381 of LNCS, pages 22--138. Springer-Verlag, 1998. Google Scholar
Digital Library
- Kohei Honda, Nobuko Yoshida, and Marco Carbone. Web Services, Mobile Processes and Types. The Bulletin of the European Association for Theoretical Computer Science, February(91):165--185, 2007.Google Scholar
- Kohei Honda, Nobuko Yoshida, and Marco Carbone. Full version of this paper. Technical Report 5, Imperial College London, 2007.Google Scholar
- Raymond Hu, Nobuko Yoshida, and Kohei Honda. Type-safe Communication in Java with Session Types. http://www.doc.ic.ac.uk/~rh105/sessiondj.html, March 2007.Google Scholar
- Atsushi Igarashi and Naoki Kobayashi. A generic type system for the pi-calculus. Theoretical Computer Science, 311(1--3): 121--163, 2004. Google Scholar
Digital Library
- Naoki Kobayashi. A new type system for deadlock-free processes. In CONCUR'06, volume 4137 of LNCS, pages 233--247, 2006. Google Scholar
Digital Library
- Naoki Kobayashi, Shin Saito, and Eijiro Sumii. An implicitly-typed deadlock-free process calculus. In CONCUR'00, volume 1877 of LNCS, pages 489--503, 2000. Google Scholar
Digital Library
- Leslie Lamport. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 21(7):558--564, July 1978. Google Scholar
Digital Library
- Dimitris Mostrous and Nobuko Yoshida. Two session typing systems for higher-order mobile processes. In TLCA'07, volume 4583 of LNCS, pages 321--335. Springer, 2007. Google Scholar
Digital Library
- Matthias Neubauer and Peter Thiemann. Session Types for Asynchronous Communication. Universität Freiburg, 2004.Google Scholar
- Matthias Neubauer and Peter Thiemann. An Implementation of Session Types. In PADL, volume 3057 of LNCS, pages 56--70. Springer, 2004.Google Scholar
- Benjamin C. Pierce. Types and Programming Languages. MIT Press, 2002. Google Scholar
Digital Library
- Bruce Schneier. Applied Cryptography: Protocols, Algorithms, and Source Code in C. John Wiley & Sons, Inc., 1993. Google Scholar
Digital Library
- Stephen Sparkes. Conversation with Steve Ross-Talbot. ACM Queue, 4(2), March 2006. Google Scholar
Digital Library
- Kaku Takeuchi, Kohei Honda, and Makoto Kubo. An Interaction-based Language and its Typing System. In PARLE'94, volume 817 of LNCS, pages 398--413. Springer--Verlag, 1994. Google Scholar
Digital Library
- UNIFI. International Organization for Standardization ISO 20022 UNIversal Financial Industry message scheme. http://www.iso20022.org.Google Scholar
- Vasco T. Vasconcelos, Simon Gay, and António Ravara. Typechecking a multithreaded functional language with session types. TCS, 368(1-2):64--87, 2006. Google Scholar
Digital Library
- WS-CDL. Web Services Choreography Working Group. http://www.w3.org/2002/ws/chor/.Google Scholar
- Nobuko Yoshida. Graph types for monadic mobile processes. In FSTTCS, volume 1180 of LNCS, pages 371--386. Springer, 1996. Google Scholar
Digital Library
- Nobuko Yoshida and Vasco T. Vasconcelos. Language primitives and type disciplines for structured communication-based programming revisit. In SecRet'06, volume 171 of ENTCS, pages 73--93. Elsevier, 2007. Google Scholar
Digital Library
Index Terms
Multiparty asynchronous session types
Recommendations
Less is more: multiparty session types revisited
Multiparty Session Types (MPST) are a typing discipline ensuring that a message-passing process implements a multiparty session protocol, without errors. In this paper, we propose a new, generalised MPST theory.
Our contribution is fourfold. (1) We ...
Multiparty Asynchronous Session Types
Communication is a central elements in software development. As a potential typed foundation for structured communication-centered programming, session types have been studied over the past decade for a wide range of process calculi and programming ...
Multiparty asynchronous session types
POPL '08: Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languagesCommunication 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 ...







Comments