Abstract
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 languages, focusing 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-centered 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 the friendly type syntax of binary session types while specifying dependencies and 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.
- AMQP. 2015. Advanced Message Queuing Protocol. http://www.iona.com/opensource/amqp/.Google Scholar
- Lucia Acciai and Michele Boreale. 2008. A type system for client progress in a service-oriented calculus. In Concurrency, Graphs and Models (LNCS), Vol. 5065. Springer, Pisa, Italy, 642--658. Google ScholarDigital Library
- Apims 2014. Apims. (2014). http://thelas.dk/index.php?title=Apims.Google Scholar
- Samik Basu, Tevfik Bultan, and Meriem Ouederni. 2012. Deciding choreography realizability. In Symposium on Principles of Programming Languages (POPL'12). ACM, Philadelphia, USA, 191--202. Google ScholarDigital Library
- Andi Bejleri and Nobuko Yoshida. 2009. Synchronous multiparty session types. In Proceedings of Programming Languages Approaches to Concurrency and Communication-Centric Software (PLACES'08) (ENTCS), Vol. 241. Elsevier, Oslo, Norway, 3--33. Google ScholarDigital Library
- Lorenzo Bettini, Mario Coppo, Loris D'Antoni, Marco De Luca, Mariangiola Dezani-Ciancaglini, and Nobuko Yoshida. 2008. Global progress in dynamically interleaved multiparty sessions. In International Conference on Concurrency Theory (CONCUR'08) (LNCS), Vol. 5201. Springer, Toronto, Canada, 418--433. Google ScholarDigital Library
- Karthikeyan Bhargavan, Ricardo Corin, Pierre-Malo Deniélou, Cédric Fournet, and James Leifer. 2009. Cryptographic protocol synthesis and verification for multiparty sessions. In Computer Security Foundations Symposium (CSF'09). IEEE, New York, USA, 124--140. Google ScholarDigital Library
- Laura Bocchi, Tzu-Chun Chen, Romain Demangeon, Kohei Honda, and Nobuko Yoshida. 2013. Monitoring networks through multiparty session types. In IFIP Joint International Conference on Formal Techniques for Distributed Systems (FMOODS/FORTE'13) (LNCS), Dirk Beyer and Michele Boreale (Eds.), Vol. 7892. Springer, Florence, Italy, 50--65.Google ScholarCross Ref
- Laura Bocchi, Romain Demangeon, and Nobuko Yoshida. 2012. A multiparty multi-session logic. In 7th International Symposium on Trustworthy Global Computing (TGC'12) (LNCS), Catuscia Palamidessi and Mark Dermot Ryan (Eds.), Vol. 8191. Springer, Newcastle upon Tyne, UK, 111--97.Google Scholar
- Laura Bocchi, Kohei Honda, Emilio Tuosto, and Nobuko Yoshida. 2010. A theory of design-by-contract for distributed multiparty interactions. In International Conference on Concurrency Theory (CONCUR'10) (LNCS), Vol. 6269. Springer, Paris, France, 162--176. Google ScholarDigital Library
- Laura Bocchi, Julien Lange, and Nobuko Yoshida. 2015. Meeting deadlines together. In International Conference on Concurrency Theory (CONCUR 2015) (LIPIcs), Vol. 42. Schloss Dagstuhl, Madrid, Spain, 283--296.Google Scholar
- Laura Bocchi, Hernán C. Melgratti, and Emilio Tuosto. 2014a. Resolving non-determinism in choreographies. In European Symposium on Programming (ESOP'14) (LNCS), Zhong Shao (Ed.), Vol. 8410. Springer, Grenoble, France, 493--512.Google ScholarDigital Library
- Laura Bocchi, Weizhen Yang, and Nobuko Yoshida. 2014b. Timed multiparty session types. In International Conference on Concurrency Theory (CONCUR'14) (LNCS), Paolo Baldan and Daniele Gorla (Eds.), Vol. 8704. Springer, Rome, Italy, 419--434.Google ScholarCross Ref
- Eduardo Bonelli, Adriana Compagnoni, and Elsa Gunter. 2005. Correspondence assertions for process synchronization in concurrent communications. Journal of Functional Programming 15, 2 (2005), 219--248. Google ScholarDigital Library
- Eduardo Bonelli and Adriana B. Compagnoni. 2007. Multipoint session types for a distributed calculus. In Trustworthy Global Computing (TGC'07) (LNCS), Vol. 4912. Springer, Sophia-Antipolis, France, 240--256. Google ScholarDigital Library
- BPMNC 2012. Business Process Model and Notation 2.0 Choreography. Retrieved from http://en.bpmn-community.org/tutorials/34/.Google Scholar
- Daniel Brand and Pitro Zafiropulo. 1983. On communicating finite-state machines. Journal of the ACM 30 (April 1983), 323--342. Issue 2. Google ScholarDigital Library
- Mario Bravetti and Gianluigi Zavattaro. 2007. Towards a unifying theory for choreography conformance and contract compliance. In Software Composition (LNCS), Vol. 4829. Springer, Braga, Portugal, 34--50. Google ScholarDigital Library
- Roberto Bruni, Ivan Lanese, Hernan Melgratti, and Emilio Tuosto. 2008. Multiparty sessions in SOC. In Coordination Models and Languages (COORDINATION'08) (LNCS), Vol. 5052. Springer, Oslo, Norway, 67--82. Google ScholarDigital Library
- Luís Caires and Frank Pfenning. 2010. Session types as intuitionistic linear propositions. In International Conference on Concurrency Theory (CONCUR'10) (LNCS), Vol. 6269. Springer, Paris, France, 222--236. Google ScholarDigital Library
- Luís Caires and Hugo Torres Vieira. 2010. Conversation types. Theoretical Computer Science 411, 51--52 (2010), 4399--4440. Google ScholarDigital Library
- Sara Capecchi, Ilaria Castellani, and Mariangiola Dezani-Ciancaglini. 2014. Typing access control and secure information flow in sessions. Information and Computation 238 (2014), 68--105. Google ScholarDigital Library
- Sara Capecchi, Ilaria Castellani, and Mariangiola Dezani-Ciancaglini. 2015. Information flow safety in multiparty sessions. To appear.Google Scholar
- Sara Capecchi, Ilaria Castellani, Mariangiola Dezani-Ciancaglini, and Tamara Rezk. 2010. Session types for access and information flow control. In International Conference on Concurrency Theory (CONCUR'10) (LNCS), Vol. 6269. Springer, Paris, France, 237--252. Google ScholarDigital Library
- Sara Capecchi, Elena Giachino, and Nobuko Yoshida. 2016. Global escape in multiparty sessions. Mathematical Structures in Computer Science 26, 2 (2016), 156--205.Google ScholarCross Ref
- Marco Carbone and Joshua Guttman. 2009a. Choreographies with Secure Boxes and Compromised Principals. In Proceedings of the 2nd Interaction and Concurrency Experience - Structured Interactions (ICE'09) (EPTCS), Vol. 12. Bologna, Italy, 1--16.Google ScholarCross Ref
- Marco Carbone and Joshua Guttman. 2009b. Execution models for choreographies and cryptoprotocols. In Proceedings of the 2nd Workshop on Programming Language Approaches to Concurrency and Communication-cEntric Software (PLACES'09) (EPTCS), Vol. 17. York, UK, 31--42.Google Scholar
- Marco Carbone, Kohei Honda, and Nobuko Yoshida. 2007. Structured communication-centred programming for web services. In European Symposium on Programming (ESOP'07) (LNCS), Vol. 4421. Springer, Braga, Portugal, 2--17. Google ScholarDigital Library
- Marco Carbone, Kohei Honda, and Nobuko Yoshida. 2008. Structured interactional exceptions in session types. In International Conference on Concurrency Theory (CONCUR'08) (LNCS), Franck van Breugel and Marsha Chechik (Eds.), Vol. 5201. Springer, Toronto, Canada, 402--417. Google ScholarDigital Library
- Marco Carbone, Kohei Honda, and Nobuko Yoshida. 2012. Structured communication-centered programming for web services. ACM Transactions on Programming Languages and Systems 34, 2 (2012), 8. Google ScholarDigital Library
- Marco Carbone, Kohei Honda, Nobuko Yoshida, Robin Milner, Gary Brown, and Steve Ross-Talbot. 2006. A Theoretical Basis of Communication-Centred Concurrent Programming. Retrieved from http://www.w3.org/2002/ws/chor/.Google Scholar
- Marco Carbone and Fabrizio Montesi. 2013. Deadlock-freedom-by-design: Multiparty asynchronous global programming. In Symposium on Principles of Programming Languages (POPL'13), Roberto Giacobazzi and Radhia Cousot (Eds.). ACM, Rome, Italy, 263--274. Google ScholarDigital Library
- Marco Carbone, Fabrizio Montesi, Carsten Schrmann, and Nobuko Yoshida. 2015. Multiparty session types as coherence proofs. In International Conference on Concurrency Theory (CONCUR'15) (LIPIcs), Vol. 42. Schloss Dagstuhl, Madrid, Spain, 412--426.Google Scholar
- Giuseppe Castagna, Mariangiola Dezani-Ciancaglini, and Luca Padovani. 2011. On global types and multi-party sessions. In International Conference on Formal Methods for Open Object-based Distributed Systems (FMOODS/FORTE) (LNCS), Vol. 6722. Springer, Reykjavik, Iceland, 1--28. Google ScholarDigital Library
- Giuseppe Castagna, Mariangiola Dezani-Ciancaglini, and Luca Padovani. 2012. On global types and multi-party session. Logical Methods in Computer Science 8, 1 (2012), 24.Google ScholarCross Ref
- Giuseppe Castagna and Luca Padovani. 2009. Contracts for mobile processes. In International Conference on Concurrency Theory (CONCUR'09) (LNCS). Springer, Bologna, Italy, 211--228. Google ScholarDigital Library
- Tzu-Chun Chen, Laura Bocchi, Pierre-Malo Deniélou, Kohei Honda, and Nobuko Yoshida. 2012. Asynchronous distributed monitoring for multiparty session enforcement. In Trustworthy Global Computing (TGC'11) (LNCS), Roberto Bruni and Vladimiro Sassone (Eds.), Vol. 7173. Springer, Newcastle upon Tyne, UK, 25--45. Google ScholarDigital Library
- Tzu-Chun Chen and Kohei Honda. 2012. Specifying stateful asynchronous properties for distributed programs. In International Conference on Concurrency Theory (CONCUR'12) (LNCS), Maciej Koutny and Irek Ulidowski (Eds.), Vol. 7454. Springer, Newcastle upon Tyne, UK, 209--224. Google ScholarDigital Library
- Mario Coppo, Mariangiola Dezani-Ciancaglini, Luca Padovani, and Nobuko Yoshida. 2013. Inference of global progress properties for dynamically interleaved multiparty sessions. In Coordination Models and Languages (COORDINATION'13) (LNCS), Rocco De Nicola and Christine Julien (Eds.), Vol. 7890. Springer, Florence, Italy, 45--59.Google Scholar
- Mario Coppo, Mariangiola Dezani-Ciancaglini, Luca Padovani, and Nobuko Yoshida. 2015a. A gentle introduction to multiparty asynchronous session types. In SFM-15:MP (LNCS), Vol. 9104. Springer, Bertinoro, Italy, 146--178.Google Scholar
- Mario Coppo, Mariangiola Dezani-Ciancaglini, and Betti Venneri. 2014. Self-adaptive multiparty sessions. Service Oriented Computing and Applications 9, 3--4 (2014), 249--268. Google ScholarDigital Library
- Mario Coppo, Mariangiola Dezani-Ciancaglini, and Nobuko Yoshida. 2007. Asynchronous session types and progress for object-oriented languages. In IFIP International Conference on Formal Methods for Open Object-based Distributed Systems (FMOODS'07) (LNCS), Vol. 4468. Springer, Paphos, Cyprus, 1--31. Google ScholarDigital Library
- Mario Coppo, Mariangiola Dezani-Ciancaglini, Nobuko Yoshida, and Luca Padovani. 2015b. Global progress for dynamically interleaved multiparty sessions. Mathematical Structures in Computer Science 26, 2 (2015), 238--302.Google ScholarCross Ref
- Mila Dalla Preda, Saverio Giallorenzo, Ivan Lanese, Jacopo Mauro, and Maurizio Gabbrielli. 2014. AIOCJ: A choreographic framework for safe adaptive distributed applications. In International Conference on Software Language Engineering (SLE'14) (LNCS), Benoît Combemale, David J. Pearce, Olivier Barais, and Jurgen J. Vinju (Eds.), Vol. 8706. Springer, Västerås, Sweden, 161--170.Google Scholar
- Ornela Dardha, Elena Giachino, and Davide Sangiorgi. 2012. Session types revisited. In International Symposium on Principles and Practice of Declarative Programming (PPDP'12), Danny De Schreye, Gerda Janssens, and Andy King (Eds.). ACM Press, Leuven, Belgium, 139--150. Google ScholarDigital Library
- Romain Demangeon and Kohei Honda. 2012. Nested protocols in session types. In International Conference on Concurrency Theory (CONCUR'12) (LNCS), Maciej Koutny and Irek Ulidowski (Eds.), Vol. 7454. Springer, Newcastle upon Tyne, UK, 272--286. Google ScholarDigital Library
- Romain Demangeon, Kohei Honda, Raymond Hu, Rumyana Neykova, and Nobuko Yoshida. 2015. Practical interruptible conversations: Distributed dynamic verification with multiparty session types and Python. Formal Methods in System Design 46, 3 (2015), 197--225. Google ScholarDigital Library
- Pierre-Malo Deniélou and Nobuko Yoshida. 2010. Buffered communication analysis in distributed multiparty sessions. In International Conference on Concurrency Theory (CONCUR'10) (LNCS), Vol. 6269. Springer, Paris, France, 343--357. Google ScholarDigital Library
- Pierre-Malo Deniélou and Nobuko Yoshida. 2011. Dynamic multirole session types. In Symposium on Principles of Programming Languages (POPL'11). ACM, Austin, USA, 435--446. Google ScholarDigital Library
- Pierre-Malo Deniélou and Nobuko Yoshida. 2012. Multiparty session types meet communicating automata. In European Symposium on Programming (ESOP'12) (LNCS), Helmut Seidl (Ed.), Vol. 7211. Springer, Tallin, Estonia, 194--213. Google ScholarDigital Library
- Pierre-Malo Deniélou and Nobuko Yoshida. 2013. Multiparty compatibility in communicating automata: Characterisation and synthesis of global session types. In International Colloquium on Automata, Languages and Programming (ICALP'13) (LNCS), Fedor V. Fomin, Rusins Freivalds, Marta Z. Kwiatkowska, and David Peleg (Eds.), Vol. 7966. Springer, Riga, Latvia, 174--186. Google ScholarDigital Library
- Pierre-Malo Deniélou, Nobuko Yoshida, Andi Bejleri, and Raymond Hu. 2012. Parameterised multiparty session types. Logical Methods in Computer Science 8, 4 (2012).Google Scholar
- Mariangiola Dezani-Ciancaglini and Ugo de'Liguoro. 2010. Sessions and session types: An overview. In International Workshop on Web Services and Formal Methods (WS-FM'09) (LNCS), Cosimo Laneve and Jianwen Su (Eds.), Vol. 6194. Springer, Bologna, Italy, 1--28. Google ScholarDigital Library
- Mariangiola Dezani-Ciancaglini, Ugo de'Liguoro, and Nobuko Yoshida. 2007. On progress for structured communications. In Trustworthy Global Computing (TGC'07) (LNCS), Vol. 4912. Springer, Sophia-Antipolis, France, 257--275. Google ScholarDigital Library
- Mariangiola Dezani-Ciancaglini, Sophia Drossopoulou, Dimitris Mostrous, and Nobuko Yoshida. 2009. Objects and session types. Information and Computation 207, 5 (2009), 595--641. Google ScholarDigital Library
- Mariangiola Dezani-Ciancaglini, Dimitris Mostrous, Nobuko Yoshida, and Sophia Drossopoulou. 2006. Session types for object-oriented languages. In European Conference on Object-Oriented Programming (ECOOP'06) (LNCS), Vol. 4067. Springer, Nantes, France, 328--352. Google ScholarDigital Library
- Manuel Fähndrich, Mark Aiken, Chris Hawblitzel, Orion Hodson, Galen C. Hunt, James R. Larus, and Steven Levi. 2006. Language support for fast and reliable message-based communication in singularity OS. In EuroSys2006 (ACM SIGOPS). ACM Press, Leuven, Belgium, 177--190.Google Scholar
- Luca Fossati, Raymond Hu, and Nobuko Yoshida. 2014. Multiparty session nets. In Trustworthy Global Computing (TGC'14) (LNCS), Matteo Maffei and Emilio Tuosto (Eds.), Vol. 8902. Springer, Rome, Italy, 112--127.Google Scholar
- Pablo Garralda, Adriana Compagnoni, and Mariangiola Dezani-Ciancaglini. 2006. BASS: Boxed ambients with safe sessions. In International Symposium on Principles and Practice of Declarative Programming (PPDP'06). ACM Press, Venice, Italy, 61--72. Google ScholarDigital Library
- Simon Gay. 2008. Bounded polymorphism in session types. MSCS 18 (2008), 895--930.Google Scholar
- Simon Gay and Malcolm Hole. 2005. Subtyping for Session Types in the Pi-Calculus. Acta Informatica 42, 2/3 (2005), 191--225. Google ScholarDigital Library
- Simon Gay and Vasco T. Vasconcelos. 2009. Linear type theory for asynchronous session types. Journal of Functional Programming (2009). Google ScholarDigital Library
- Simon Gay, Vasco T. Vasconcelos, António Ravara, Nils Gesbert, and Alexandre Z. Caldeira. 2010. Modular session types for distributed object-oriented programming. In Symposium on Principles of Programming Languages (POPL'10). ACM, Madrid, Spain, 299--312. Google ScholarDigital Library
- Jean-Yves Girard. 1987. Linear logic. Theoretical Computer Science 50 (1987), 1--102. Google ScholarDigital Library
- Matthew Hennessy. 2007. A Distributed Pi-Calculus. Cambridge University Press. Google ScholarDigital Library
- Anders Henriksen, Lasse Nielsen, Thomas Hildebrandt, Nobuko Yoshida, and Fritz Henglein. 2013. Trustworthy pervasive healthcare services via multi-party session type. In Foundations of Health Information Engineering and Systems (FHIES'12) (LNCS), Jens Weber and Isabelle Perseil (Eds.), Vol. 7789. Paris, France, 124--141.Google Scholar
- Kohei Honda. 1993. Types for dyadic interaction. In International Conference on Concurrency Theory (CONCUR'93) (LNCS), Eike Best (Ed.), Vol. 715. Springer-Verlag, Hildesheim, Germany, 509--523. Google ScholarDigital Library
- Kohei Honda, Raymond Hu, Rumyana Neykova, Tzu-Chun Chen, Romain Demangeon, Pierre-Malo Deniélou, and Nobuko Yoshida. 2014. Structuring communication with session types. In Concurrent Objects and Beyond (COB'14) (LNCS), Gul A. Agha, Atsushi Igarashi, Naoki Kobayashi, Hidehiko Masuhara, Satoshi Matsuoka, Etsuya Shibayama, and Kenjiro Taura (Eds.), Vol. 8665. Springer, 105--127.Google Scholar
- Kohei Honda, Aybek Mukhamedov, Gary Brown, Tzu-Chun Chen, and Nobuko Yoshida. 2011. Scribbling interactions with a formal foundation. In International Conference on Distributed Computing and Internet Technology (ICDCIT'11) (LNCS), Raja Natarajan and Adegboyega K. Ojo (Eds.), Vol. 6536. Springer, Bhubaneswar, India, 55--75. Google ScholarDigital Library
- Kohei Honda and Mario Tokoro. 1991. An object calculus for asynchronous communication. In European Conference on Object-Oriented Programming (ECOOP'91), Vol. 512. Geneva, Switzerland, 133--147. Google ScholarDigital Library
- Kohei Honda, Vasco T. Vasconcelos, and Makoto Kubo. 1998. Language primitives and type disciplines for structured communication-based programming. In European Symposium on Programming (ESOP'98) (LNCS), Vol. 1381. Springer-Verlag, Lisbon, Portugal, 22--138. Google ScholarDigital Library
- Kohei Honda, Nobuko Yoshida, and Marco Carbone. 2007. Web services, mobile processes and types. The Bulletin of the European Association for Theoretical Computer Science. February, 91 (2007), 165--185.Google Scholar
- Kohei Honda, Nobuko Yoshida, and Marco Carbone. 2008a. Multiparty asynchronous session types. In Symposium on Principles of Programming Languages (POPL'08). ACM, San Francisco, USA, 273--284. Google ScholarDigital Library
- Kohei Honda, Nobuko Yoshida, and Marco Carbone. 2008b. Multiparty Asynchronous Session Types. (2008). Web page. http://www.doc.ic.ac.uk/∼yoshida/multiparty.Google Scholar
- Raymond Hu, Dimitrious Kouzapas, Oliver Pernet, Nobuko Yoshida, and Kohei Honda. 2010. Type-safe eventful sessions in Java. In European Conference on Object-Oriented Programming (ECOOP'10) (LNCS), Vol. 6183. Springer, Maribor, Slovenia, 329--353. Google ScholarDigital Library
- Raymond Hu, Rumyana Neykova, Nobuko Yoshida, and Romain Demangeon. 2013. Practical interruptible conversations: Distributed dynamic verification with session types and python. In Runtime Verification (RV'13) (LNCS), Axel Legay and Saddek Bensalem (Eds.), Vol. 8174. Springer, Rennes, France, 148--130.Google Scholar
- Raymond Hu, Nobuko Yoshida, and Kohei Honda. 2008. Session-based distributed programming in Java. In European Conference on Object-Oriented Programming (ECOOP'08), Jan Vitek (Ed.), Vol. 5142. Springer, Paphos, Cyprus, 516--541. Google ScholarDigital Library
- Atsushi Igarashi and Naoki Kobayashi. 2004. A generic type system for the Pi-calculus. Theoretical Computer Science 311, 1--3 (2004), 121--163. Google ScholarDigital Library
- International Telecommunication Union. 1996. Recommendation Z.120: Message Sequence Chart. (1996).Google Scholar
- Naoki Kobayashi. 2006. A new type system for deadlock-free processes. In International Conference on Concurrency Theory (CONCUR'06) (LNCS), Vol. 4137. Bonn, Germany, 233--247. Google ScholarDigital Library
- Dimitrios Kouzapas, Jorge A. Perez, and Nobuko Yoshida. 2015. Characteristic bisimulations for higher-order session processes. In International Conference on Concurrency Theory (CONCUR'15) (LIPIcs), Vol. 42. Schloss Dagstuhl, Madrid, Spain, 398--411.Google Scholar
- Dimitrios Kouzapas and Nobuko Yoshida. 2014. Globally governed session semantics. Logical Methods in Computer Science 10, 4 (2014).Google Scholar
- Dimitrios Kouzapas, Nobuko Yoshida, Raymond Hu, and Kohei Honda. 2016. On asynchronous eventful session semantics. Mathematical Structures in Computer Science 26, 2 (2016), 303--364.Google ScholarCross Ref
- Pavel Krcál and Wang Yi. 2006. Communicating timed automata: The more synchronous, the more difficult to verify. In Computer Aided Verification (CAV'06) (LNCS), Vol. 4144. Springer, Seattle, USA, 249--262. Google ScholarDigital Library
- Leslie Lamport. 1978. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM 21, 7 (July 1978), 558--564. Google ScholarDigital Library
- Julien Lange and Emilio Tuosto. 2012. Synthesising choreographies from local session types. In International Conference on Concurrency Theory (CONCUR'12) (LNCS), Maciej Koutny and Irek Ulidowski (Eds.), Vol. 7454. Springer, Newcastle upon Tyne, UK, 225--239. Google ScholarDigital Library
- Julien Lange, Emilio Tuosto, and Nobuko Yoshida. 2015. From communicating machines to graphical choreographies. In Symposium on Principles of Programming Languages (POPL'15), Sriram K. Rajamani and David Walker (Eds.). ACM Press, Mumbai, India, 221--232. Google ScholarDigital Library
- Massimo Merro. 2007. An observational theory for mobile Ad hoc networks. In Electronic Notes in Theoretical Computer Science, Vol. 172. Elsevier, 275--293. Google ScholarDigital Library
- Nicola Mezzetti and Davide Sangiorgi. 2006. Towards a calculus for wireless systems. In Electronic Notes in Theoretical Computer Science, Vol. 158. Elsevier, 331--353. Google ScholarDigital Library
- Leonardo Gaetano Mezzina. 2008. How to infer finite session types in a calculus of services and sessions. In Coordination Models and Languages (COORDINATION'08) (LNCS), Vol. 5052. Springer, Oslo, Norway, 216--231. Google ScholarDigital Library
- Fabrizio Montesi and Nobuko Yoshida. 2013. Compositional choreographies. In International Conference on Concurrency Theory (CONCUR'13) (LNCS), Pedro R. D'Argenio and Hernán C. Melgratti (Eds.), Vol. 8052. Springer, Buenos Aires, Argentina, 439--425. Google ScholarDigital Library
- Dimitris Mostrous and Nobuko Yoshida. 2007. Two session typing systems for higher-order mobile processes. In Typed Lambda Calculi and Applications (TLCA'07) (LNCS), Vol. 4583. Springer, Paris, France, 321--335. Google ScholarDigital Library
- Dimitris Mostrous and Nobuko Yoshida. 2009. Session-based communication optimisation for higher-order mobile processes. In Typed Lambda Calculi and Applications, 9th International Conference, TLCA 2009 (LNCS), Pierre-Louis Curien (Ed.), Vol. 5608. Springer, Brasilia, Brazil, 203--218. Google ScholarDigital Library
- Dimitris Mostrous, Nobuko Yoshida, and Kohei Honda. 2009. Global principal typing in partially commutative asynchronous sessions. In European Symposium on Programming (ESOP'09) (LNCS), Vol. 5502. Springer, York, UK, 316--332. Google ScholarDigital Library
- Sebastian Nanz, Flemming Nielson, and Hanne Riis Nielson. 2007. Topology-dependent abstractions of broadcast networks. In International Conference on Concurrency Theory (CONCUR'07). Lisbon, Portugal, 226--240. Google ScholarDigital Library
- Matthias Neubauer and Peter Thiemann. 2004a. An implementation of session types. In Practical Aspects of Declarative Languages (PADL'04) (LNCS), Vol. 3057. Springer, Dallas, USA, 56--70.Google Scholar
- Matthias Neubauer and Peter Thiemann. 2004b. Session Types for Asynchronous Communication. (2004). Universität Freiburg.Google Scholar
- Rumyana Neykova, Laura Bocchi, and Nobuko Yoshida. 2014. Timed runtime monitoring for multiparty conversations. In Workshop on Behavioural Types (BEAT'14) (EPTCS), Marco Carbone (Ed.), Vol. 162. Rome, Italy, 19--26.Google ScholarCross Ref
- Rumyana Neykova and Nobuko Yoshida. 2014. Multiparty session actors. In Coordination Models and Languages (COORDINATION'14) (LNCS), Eva Kühn and Rosario Pugliese (Eds.), Vol. 8459. Springer, Berlin, Germany, 131--146.Google Scholar
- Rumyana Neykova, Nobuko Yoshida, and Raymond Hu. 2013. SPY: Local verification of global protocols. In Runtime Verification (RV'13) (LNCS), Axel Legay and Saddek Bensalem (Eds.), Vol. 8174. Springer, Rennes, France, 363--358.Google Scholar
- Nicholas Ng, Jose G. F. Coutinho, and Nobuko Yoshida. 2015. Protocols by default: Safe MPI code generation based on session types. In Compiler Construction (CC'15) (LNCS). Björn Franke (Ed.). Springer, London, UK, 212--232.Google Scholar
- Nicholas Ng and Nobuko Yoshida. 2014. Pabble: Parameterised scribble. Service Oriented Computing and Applications 9, 3--4 (2014), 1--16. Google ScholarDigital Library
- Nicholas Ng, Nobuko Yoshida, and Kohei Honda. 2012. Multiparty session C: Safe parallel programming with message optimisation. In TOOLS'12 (LNCS), Carlo A. Furia and Sebastian Nanz (Eds.), Vol. 7304. Springer, Prague, Czech Republic, 202--218. Google ScholarDigital Library
- Nicholas Ng, Nobuko Yoshida, and Wayne Luk. 2013. Scalable session programming for heterogeneous high-performance systems. In International Conference on Software Engineering and Formal Methods (SEFM'13) (LNCS), Steve Counsell and Manuel Núñez (Eds.), Vol. 8368. Springer, Madrid, Spain, 82--98. Google ScholarDigital Library
- Nicholas Ng, Nobuko Yoshida, Xin Yu Niu, Kuen Hung Tsoi, and Wayne Luk. 2012. Session types: Towards safe and fast reconfigurable programming. SIGARCH CAN 40, 5 (2012), 22--27. Google ScholarDigital Library
- Nicholas Ng, Nobuko Yoshida, Olivier Pernet, Raymond Hu, and Yiannos Kryftis. 2011. Safe parallel programming with session Java. In Coordination Models and Language (COORDINATION'11) (LNCS), Vol. 6721. Springer, Reykjavik, Iceland, 110--126. Google ScholarDigital Library
- Lasse Nielsen, Nobuko Yoshida, and Kohei Honda. 2010. Multiparty symmetric sum types. In Expressiveness in Concurrency (EXPRESS'10) (EPTCS), Vol. 41. Paris, France, 121--135.Google Scholar
- OOI. 2015. Ocean Observatories Initiative. Retrieved from http://www.oceanleadership.org/programs-and-partnerships/ocean-observing/ooi/.Google Scholar
- Luca Padovani. 2014a. Deadlock and lock freedom in the linear π-calculus. In Computer Science Logic and Logic in Computer Science (CSL-LICS'14), Thomas A. Henzinger and Dale Miller (Eds.). ACM Press, Vienna, Austria, 72:1--72:10. Google ScholarDigital Library
- Luca Padovani. 2014b. Fair subtyping for multi-party session types. Mathematical Structures in Computer Science (2014), 1--41.Google Scholar
- B. Pierce and D. Sangiorgi. 1996. Typing and subtyping for mobile processes. Journal of Mathematical Structures in Computer Science 6, 5 (1996), 409--454.Google ScholarCross Ref
- Benjamin C. Pierce. 2002. Types and Programming Languages. MIT Press. Google ScholarDigital Library
- Jérémy Planul, Ricardo Corin, and Cédric Fournet. 2009. Secure enforcement for global process specifications. In International Conference on Concurrency Theory (CONCUR'09) (LNCS), Mario Bravetti and Gianluigi Zavattaro (Eds.), Vol. 5710. Springer, Bologna, Italy, 511--526. Google ScholarDigital Library
- K. V. S. Prasad. 2001. Broadcast calculus interpreted in CCS upto bisimulation. In Electronic Notes in Theoretical Computer Science 52, 1, 83--100.Google ScholarCross Ref
- K. V. S. Prasad. 2006. A prospectus for mobile broadcasting systems. In Electronic Notes in Theoretical Computer Science 162, 1, 295--300.Google ScholarCross Ref
- Riccardo Pucella and Jesse Tov. 2008. Haskell session types with (almost) no class. In Haskell Symposium (Haskell'08). ACM SIGPLAN, Victoria, Canada. Google ScholarDigital Library
- Matthew Sackman and Susan Eisenbach. 2008. Session Types in Haskell. draft.Google Scholar
- SAVARA. 2010. SAVARA JBoss Project. Retrieved from http://www.jboss.org/savara.Google Scholar
- Bruce Schneier. 1993. Applied Cryptography: Protocols, Algorithms, and Source Code in C. John Wiley & Sons, Inc. Google ScholarDigital Library
- Scribble. 2008. Scribble Project. Retrieved from www.scribble.org.Google Scholar
- K. C. Sivaramakrishnan, Karthik Nagaraj, Lukasz Ziarek, and Patrick Eugster. 2010. Efficient session type guided distributed interaction. In Coordination Models and Languages (COORDINATION'10) (LNCS), Vol. 6116. Springer, Amsterdam, Holland, 152--167. Google ScholarDigital Library
- Stephen Sparkes. 2006. Conversation with steve ross-talbot. ACM Queue 4, 2 (March 2006). Google ScholarDigital Library
- Nikhil Swamy, Juan Chen, Cédric Fournet, Pierre-Yves Strub, Karthikeyan Bhargavan, and Jean Yang. 2011. Secure distributed programming with value-dependent types. In International Conference on Functional Programming (ICFP'11). IEEE, Tokyo, Japan, 266--278. Google ScholarDigital Library
- Kaku Takeuchi, Kohei Honda, and Makoto Kubo. 1994. An interaction-based language and its typing system. In Parallel Architectures and Languages Europe (PARLE'94) (LNCS), Vol. 817. Springer-Verlag, Athens, Greece, 398--413. Google ScholarDigital Library
- F. Javier Thayer, Jonathan C. Herzog, and Joshua D. Guttman. 1999. Strand spaces: Proving security protocols correct. Journal of Computer Security 7, 2/3 (1999), 191--230. Google ScholarDigital Library
- Vasco T. Vasconcelos, Simon Gay, and António Ravara. 2006. Typechecking a multithreaded functional language with session types. Theoretical Computer Science 368, 1--2 (2006), 64--87. Google ScholarDigital Library
- Hugo Torres Vieira, Luís Caires, and João Costa Seco. 2008. The conversation calculus: A model of service-oriented computation. In European Symposium on Programming (ESOP'08) (LNCS), Vol. 4960. Springer, Budapest, Hungary, 269--283. Google ScholarDigital Library
- Jules Villard. 2011. Heaps and Hops. Ph.D. Dissertation. ENS Cachan.Google Scholar
- Phil Wadler. 2012. Proposition as sessions. In International Conference on Functional Programming (ICFP'12). IEEE, Copenhagen, Denmark, 273--286. Google ScholarDigital Library
- WS-CDL. 2003. Web Services Choreography Working Group. http://www.w3.org/2002/ws/chor/. (2003).Google Scholar
- Nobuko Yoshida. 1996. Graph types for monadic mobile processes. In Foundations of Software Technology and Theoretical Computer Science (FSTTCS'96) (LNCS), Vol. 1180. Springer, Hyderabad, India, 371--386. Google ScholarDigital Library
- Nobuko Yoshida, Martin Berger, and Kohei Honda. 2001. Strong normalisation in the π-Calculus. In Proc. LICS'01. IEEE, 311--322. The full version in Journal of Information and Computation, 191 (2004), 145--202, Elsevier. Google ScholarDigital Library
- Nobuko Yoshida, Raymond Hu, Rumyana Neykova, and Nicholas Ng. 2013. The scribble protocol language. In Trustworthy Global Computing (TGC'13) (LNCS), Martín Abadi and Alberto Lluch-Lafuente (Eds.), Vol. 8358. Springer, Buenos Aires, Argentina, 22--41.Google Scholar
- Nobuko Yoshida and Vasco Thudichum Vasconcelos. 2007. Language primitives and type discipline for structured communication-based programming revisited: Two systems for higher-order session communication. Electronic Notes on Theoretical Computer Science 171, 4 (2007), 73--93. Google ScholarDigital Library
- Nobuko Yoshida, Vasco Thudichum Vasconcelos, Hervé Paulino, and Kohei Honda. 2008. Session-based compilation framework for multicore programming. In International Symposium on Formal Methods for Components and Objects (FMCO'08) (LNCS), Frank S. de Boer, Marcello M. Bonsangue, and Eric Madelain (Eds.), Vol. 5751. Springer, Sophia Antipolis, France, 226--246.Google Scholar
- ZDLC. 2015. Zero Deviation Lifecycle. Retrieved from http://www.zdlc.co.Google Scholar
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
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 ...
Multiparty asynchronous session types
POPL '08Communication 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