skip to main content
research-article
Open Access

Hybrid Multiparty Session Types: Compositionality for Protocol Specification through Endpoint Projection

Published:06 April 2023Publication History
Skip Abstract Section

Abstract

Multiparty session types (MPST) are a specification and verification framework for distributed message-passing systems. The communication protocol of the system is specified as a global type, from which a collection of local types (local process implementations) is obtained by endpoint projection. A global type is a single disciplining entity for the whole system, specified by one designer that has full knowledge of the communication protocol. On the other hand, distributed systems are often described in terms of their components: a different designer is in charge of providing a subprotocol for each component. The problem of modular specification of global protocols has been addressed in the literature, but the state of the art focuses only on dual input/output compatibility. Our work overcomes this limitation. We propose the first MPST theory of multiparty compositionality for distributed protocol specification that is semantics-preserving, allows the composition of two or more components, and retains full MPST expressiveness. We introduce hybrid types for describing subprotocols interacting with each other, define a novel compatibility relation, explicitly describe an algorithm for composing multiple subprotocols into a well-formed global type, and prove that compositionality preserves projection, thus retaining semantic guarantees, such as liveness and deadlock freedom. Finally, we test our work against real-world case studies and we smoothly extend our novel compatibility to MPST with delegation and explicit connections.

References

  1. Gul Agha. 1990. Concurrent Object-Oriented Programming. Commun. ACM, 33, 9 (1990), sep, 125–141. issn:0001-0782 https://doi.org/10.1145/83880.84528 Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Franco Barbanera, Ugo de’Liguoro, and Rolf Hennicker. 2018. Global Types for Open Systems. In Proceedings 11th Interaction and Concurrency Experience, ICE 2018, Madrid, Spain, June 20-21, 2018, Massimo Bartoletti and Sophia Knight (Eds.) (EPTCS, Vol. 279). 4–20. https://doi.org/10.4204/EPTCS.279.4 Google ScholarGoogle ScholarCross RefCross Ref
  3. Franco Barbanera, Ugo de’Liguoro, and Rolf Hennicker. 2019. Connecting open systems of communicating finite state machines. Journal of Logical and Algebraic Methods in Programming, 109 (2019), 100476. issn:2352-2208 https://doi.org/10.1016/j.jlamp.2019.07.004 Google ScholarGoogle ScholarCross RefCross Ref
  4. Franco Barbanera, Mariangiola Dezani-Ciancaglini, Ivan Lanese, and Emilio Tuosto. 2021. Composition and decomposition of multiparty sessions. Journal of Logical and Algebraic Methods in Programming, 119 (2021), 100620. issn:2352-2208 https://doi.org/10.1016/j.jlamp.2020.100620 Google ScholarGoogle ScholarCross RefCross Ref
  5. Franco Barbanera, Ivan Lanese, and Emilio Tuosto. 2020. Choreography Automata. In Coordination Models and Languages, Simon Bliudze and Laura Bocchi (Eds.). Springer International Publishing, Cham. 86–106. isbn:978-3-030-50029-0 https://doi.org/10.1007/978-3-030-50029-0_6 Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Franco Barbanera, Ivan Lanese, and Emilio Tuosto. 2020. Composing Communicating Systems, Synchronously. In Leveraging Applications of Formal Methods, Verification and Validation: Verification Principles, Tiziana Margaria and Bernhard Steffen (Eds.). Springer International Publishing, Cham. 39–59. isbn:978-3-030-61362-4 https://doi.org/10.1007/978-3-030-61362-4_3 Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 CONCUR 2008 - Concurrency Theory, Franck van Breugel and Marsha Chechik (Eds.). Springer, Berlin, Heidelberg. 418–433. isbn:978-3-540-85361-9 https://doi.org/10.1007/978-3-540-85361-9_33 Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Laura Bocchi, Weizhen Yang, and Nobuko Yoshida. 2014. Timed Multiparty Session Types. In 25th International Conference on Concurrency Theory (LNCS, Vol. 8704). Springer, 419–434. https://doi.org/10.1007/978-3-662-44584-6_29 Google ScholarGoogle ScholarCross RefCross Ref
  9. Luís Caires and Hugo Torres Vieira. 2009. Conversation Types. In Programming Languages and Systems, Giuseppe Castagna (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg. 285–300. isbn:978-3-642-00590-9 https://doi.org/10.1007/978-3-642-00590-9_21 Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Marco Carbone and Fabrizio Montesi. 2013. Deadlock-Freedom-by-Design: Multiparty Asynchronous Global Programming. In Proceedings of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL ’13). Association for Computing Machinery, New York, NY, USA. 263–274. isbn:9781450318327 https://doi.org/10.1145/2429069.2429101 Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Marco Carbone, Fabrizio Montesi, and Hugo Torres Vieira. 2018. Choreographies for Reactive Programming. https://doi.org/10.48550/ARXIV.1801.08107 Google ScholarGoogle Scholar
  12. Ilaria Castellani, Mariangiola Dezani-Ciancaglini, and Paola Giannini. 2019. Reversible sessions with flexible choices. Acta Informatica, 56, 7-8 (2019), 553–583. https://doi.org/10.1007/s00236-019-00332-y Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Ilaria Castellani, Mariangiola Dezani-Ciancaglini, Paola Giannini, and Ross Horne. 2020. Global types with internal delegation. Theoretical Computer Science, 807 (2020), 128–153. issn:0304-3975 https://doi.org/10.1016/j.tcs.2019.09.027 In memory of Maurice Nivat, a founding father of Theoretical Computer Science - Part II Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. David Castro, Raymond Hu, Sung-Shik Jongmans, Nicholas Ng, and Nobuko Yoshida. 2019. Distributed Programming Using Role-parametric Session Types in Go: Statically-typed Endpoint APIs for Dynamically-instantiated Communication Structures. Proc. ACM Program. Lang., 3, POPL (2019), Article 29, Jan., 30 pages. issn:2475-1421 https://doi.org/10.1145/3290342 Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. David Castro-Perez, Francisco Ferreira, Lorenzo Gheri, and Nobuko Yoshida. 2021. Zooid: A DSL for Certified Multiparty Computation: From Mechanised Metatheory to Certified Multiparty Processes. In Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation (PLDI 2021). Association for Computing Machinery, New York, NY, USA. 237–251. isbn:9781450383912 https://doi.org/10.1145/3453483.3454041 Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. David Castro-Perez and Nobuko Yoshida. 2020. CAMP: Cost-Aware Multiparty Session Protocols. Proc. ACM Program. Lang., 4, OOPSLA (2020), Article 155, nov, 30 pages. https://doi.org/10.1145/3428223 Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Guillermina Cledou, Luc Edixhoven, Sung-Shik Jongmans, and José Proença. 2022. API Generation for Multiparty Session Types, Revisited and Revised Using Scala 3. In 36th European Conference on Object-Oriented Programming (ECOOP 2022), Karim Ali and Jan Vitek (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 222). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. 27:1–27:28. isbn:978-3-95977-225-9 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2022.27 Google ScholarGoogle ScholarCross RefCross Ref
  18. Mario Coppo, Mariangiola Dezani-Ciancaglini, Luca Padovani, and Nobuko Yoshida. 2015. A Gentle Introduction to Multiparty Asynchronous Session Types. In 15th International School on Formal Methods for the Design of Computer, Communication and Software Systems: Multicore Programming (LNCS, Vol. 9104). Springer, 146–178. https://doi.org/10.1007/978-3-319-18941-3_4 Google ScholarGoogle ScholarCross RefCross Ref
  19. Luís Cruz-Filipe, Fabrizio Montesi, and Marco Peressotti. 2021. Formalising a Turing-Complete Choreographic Language in Coq. In 12th International Conference on Interactive Theorem Proving (ITP 2021), Liron Cohen and Cezary Kaliszyk (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 193). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. 15:1–15:18. isbn:978-3-95977-188-7 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ITP.2021.15 Google ScholarGoogle ScholarCross RefCross Ref
  20. Romain Demangeon and Kohei Honda. 2012. Nested Protocols in Session Types. In CONCUR 2012 – Concurrency Theory, Maciej Koutny and Irek Ulidowski (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 272–286. isbn:978-3-642-32940-1 https://doi.org/10.1007/978-3-642-32940-1_20 Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Romain Demangeon, Kohei Honda, Raymond Hu, Rumyana Neykova, and Nobuko Yoshida. 2015. Practical interruptible conversations: distributed dynamic verification with multiparty session types and Python. FMSD, 46, 3 (2015), 197–225. https://doi.org/10.1007/s10703-014-0218-8 Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Pierre-Malo Deniélou and Nobuko Yoshida. 2013. Multiparty Compatibility in Communicating Automata: Characterisation and Synthesis of Global Session Types. In Automata, Languages, and Programming, Fedor V. Fomin, Rūsiņš Freivalds, Marta Kwiatkowska, and David Peleg (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 174–186. isbn:978-3-642-39212-2 https://doi.org/10.1007/978-3-642-39212-2_18 Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Ethereum. 2022. Introduction to Smart Contracts. https://ethereum.org/en/developers/docs/smart-contracts/ Accessed: 20/10/2022 Google ScholarGoogle Scholar
  24. Lorenzo Gheri, Ivan Lanese, Neil Sayers, Emilio Tuosto, and Nobuko Yoshida. 2022. Design-By-Contract for Flexible Multiparty Session Protocols. In 36th European Conference on Object-Oriented Programming (ECOOP 2022), Karim Ali and Jan Vitek (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 222). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. 8:1–8:28. isbn:978-3-95977-225-9 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2022.8 Google ScholarGoogle ScholarCross RefCross Ref
  25. Lorenzo Gheri and Nobuko Yoshida. 2023. Hybrid Multiparty Session Types – Full Version. https://doi.org/10.48550/ARXIV.2302.01979 Google ScholarGoogle Scholar
  26. Rob van Glabbeek, Peter Höfner, and Ross Horne. 2021. Assuming Just Enough Fairness to make Session Types Complete for Lock-freedom. In 2021 36th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS). 1–13. https://doi.org/10.1109/LICS52264.2021.9470531 Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Dick Hardt. 2012. The OAuth 2.0 Authorization Framework. RFC 6749. https://doi.org/10.17487/RFC6749 Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Paul Harvey, Simon Fowler, Ornela Dardha, and Simon J. Gay. 2021. Multiparty Session Types for Safe Runtime Adaptation in an Actor Language. In 35th European Conference on Object-Oriented Programming (ECOOP 2021), Anders Møller and Manu Sridharan (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 194). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. 10:1–10:30. isbn:978-3-95977-190-0 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2021.10 Google ScholarGoogle ScholarCross RefCross Ref
  29. Kohei Honda, Aybek Mukhamedov, Gary Brown, Tzu-Chun Chen, and Nobuko Yoshida. 2011. Scribbling Interactions with a Formal Foundation. In Distributed Computing and Internet Technology, Raja Natarajan and Adegboyega Ojo (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 55–75. isbn:978-3-642-19056-8 https://doi.org/10.1007/978-3-642-19056-8_4 Google ScholarGoogle ScholarCross RefCross Ref
  30. Kohei Honda, Vasco T. Vasconcelos, and Makoto Kubo. 1998. Language primitives and type discipline for structured communication-based programming. In Programming Languages and Systems, Chris Hankin (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg. 122–138. https://doi.org/10.1007/BFb0053567 Google ScholarGoogle ScholarCross RefCross Ref
  31. Kohei Honda, Nobuko Yoshida, and Marco Carbone. 2008. Multiparty Asynchronous Session Types. In Proc. of 35th Symp. on Princ. of Prog. Lang. (POPL ’08). ACM, New York, NY, USA. 273–284. https://doi.org/10.1145/1328897.1328472 Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Kohei Honda, Nobuko Yoshida, and Marco Carbone. 2016. Multiparty Asynchronous Session Types. J. ACM, 63, 1 (2016), 9:1–9:67. https://doi.org/10.1145/2827695 Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Ross Horne. 2020. Session Subtyping and Multiparty Compatibility Using Circular Sequents. In 31st International Conference on Concurrency Theory (CONCUR 2020), Igor Konnov and Laura Kovács (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 171). Schloss Dagstuhl–Leibniz-Zentrum für Informatik, Dagstuhl, Germany. 12:1–12:22. isbn:978-3-95977-160-3 issn:1868-8969 https://doi.org/10.4230/LIPIcs.CONCUR.2020.12 Google ScholarGoogle ScholarCross RefCross Ref
  34. Raymond Hu and Nobuko Yoshida. 2016. Hybrid Session Verification Through Endpoint API Generation. In Fundamental Approaches to Software Engineering - 19th International Conference, FASE 2016,Eindhoven, The Netherlands, Perdita Stevens and Andrzej Wasowski (Eds.) (Lecture Notes in Computer Science, Vol. 9633). Springer, 401–418. https://doi.org/10.1007/978-3-662-49665-7_24 Google ScholarGoogle ScholarCross RefCross Ref
  35. Raymond Hu and Nobuko Yoshida. 2017. Explicit Connection Actions in Multiparty Session Types. In FASE (LNCS, Vol. 10202). 116–133. https://doi.org/10.1007/978-3-662-54494-5_7 Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Raymond Hu, Nobuko Yoshida, and Kohei Honda. 2008. Session-Based Distributed Programming in Java. In ECOOP 2008 – Object-Oriented Programming, Jan Vitek (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg. 516–541. https://doi.org/10.1007/978-3-540-70592-5_22 Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Keigo Imai, Rumyana Neykova, Nobuko Yoshida, and Shoji Yuen. 2020. Multiparty Session Programming With Global Protocol Combinators. In 34th European Conference on Object-Oriented Programming (ECOOP 2020), Robert Hirschfeld and Tobias Pape (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 166). Schloss Dagstuhl–Leibniz-Zentrum für Informatik, Dagstuhl, Germany. 9:1–9:30. isbn:978-3-95977-154-2 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2020.9 Google ScholarGoogle ScholarCross RefCross Ref
  38. Jules Jacobs, Stephanie Balzer, and Robbert Krebbers. 2022. Multiparty GV: Functional Multiparty Session Types with Certified Deadlock Freedom. Proc. ACM Program. Lang., 6, ICFP (2022), Article 107, aug, 30 pages. https://doi.org/10.1145/3547638 Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Cristina Lopes, Jean-Marc Loingtier, and John Irwin. 1997. Aspect-oriented programming. In ECOOP’97 — Object-Oriented Programming, Mehmet Akşit and Satoshi Matsuoka (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 220–242. isbn:978-3-540-69127-3 https://doi.org/10.1007/BFb0053381 Google ScholarGoogle ScholarCross RefCross Ref
  40. Nicolas Lagaillardie, Rumyana Neykova, and Nobuko Yoshida. 2022. Stay Safe Under Panic: Affine Rust Programming with Multiparty Session Types. In 36th European Conference on Object-Oriented Programming (ECOOP 2022), Karim Ali and Jan Vitek (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 222). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. 4:1–4:29. isbn:978-3-95977-225-9 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2022.4 Google ScholarGoogle ScholarCross RefCross Ref
  41. Julien Lange and Emilio Tuosto. 2012. Synthesising Choreographies from Local Session Types. In CONCUR 2012 – Concurrency Theory, Maciej Koutny and Irek Ulidowski (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 225–239. isbn:978-3-642-32940-1 https://doi.org/10.1007/978-3-642-32940-1_17 Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Julien Lange, Emilio Tuosto, and Nobuko Yoshida. 2015. From communicating machines to graphical choreographies. In 42nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM, 221–232. https://doi.org/10.1145/2676726.2676964 Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Julien Lange and Nobuko Yoshida. 2019. Verifying Asynchronous Interactions via Communicating Session Automata. In Computer Aided Verification, Isil Dillig and Serdar Tasiran (Eds.). Springer International Publishing, Cham. 97–117. isbn:978-3-030-25540-4 https://doi.org/10.1007/978-3-030-25540-4_6 Google ScholarGoogle ScholarCross RefCross Ref
  44. MIT. 2022. Kerberos: The Network Authentication Protocol. https://web.mit.edu/kerberos/ Accessed: 20/10/2022 Google ScholarGoogle Scholar
  45. Anson Miu, Francisco Ferreira, Nobuko Yoshida, and Fangyi Zhou. 2021. Communication-Safe Web Programming in TypeScript with Routed Multiparty Session Types. In Proceedings of the 30th ACM SIGPLAN International Conference on Compiler Construction (CC 2021). Association for Computing Machinery, New York, NY, USA. 94–106. isbn:9781450383257 https://doi.org/10.1145/3446804.3446854 Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Fabrizio Montesi. 2013. Choreographic Programming. Ph. D. Dissertation. isbn:978-87-7949-299-8 https://www.fabriziomontesi.com/files/choreographic_programming.pdf Google ScholarGoogle Scholar
  47. Fabrizio Montesi and Nobuko Yoshida. 2013. Compositional Choreographies. In CONCUR 2013 – Concurrency Theory, Pedro R. D’Argenio and Hernán Melgratti (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 425–439. isbn:978-3-642-40184-8 https://doi.org/10.1007/978-3-642-40184-8_30 Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Rumyana Neykova, Raymond Hu, Nobuko Yoshida, and Fahd Abdeljallal. 2018. A Session Type Provider: Compile-time API Generation for Distributed Protocols with Interaction Refinements in F#. In 27th International Conference on Compiler Construction. ACM, 128–138. https://doi.org/10.1145/3178372.3179495 Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Rumyana Neykova and Nobuko Yoshida. 2019. Featherweight Scribble (LNCS, Vol. 11665). Springer, Cham. 236–259. isbn:978-3-030-21485-2 https://doi.org/10.1007/978-3-030-21485-2_14 Google ScholarGoogle ScholarCross RefCross Ref
  50. OMG. 2022. Business Process Model and Notation. https://www.bpmn.org/ Accessed: 20/10/2022 Google ScholarGoogle Scholar
  51. Luca Padovani, Vasco Thudichum Vasconcelos, and Hugo Torres Vieira. 2014. Typing Liveness in Multiparty Communicating Systems. In Coordination Models and Languages, Eva Kühn and Rosario Pugliese (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 147–162. isbn:978-3-662-43376-8 https://doi.org/10.1007/978-3-662-43376-8_10 Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Zorica Savanovic, Letterio Galletta, and Hugo Torres Vieira. 2020. A type language for message passing component-based systems. In Proceedings 13th Interaction and Concurrency Experience, ICE 2020, Online, 19 June 2020, Julien Lange, Anastasia Mavridou, Larisa Safina, and Alceste Scalas (Eds.) (EPTCS, Vol. 324). 3–24. https://doi.org/10.4204/EPTCS.324.3 Google ScholarGoogle ScholarCross RefCross Ref
  53. Alceste Scalas, Ornela Dardha, Raymond Hu, and Nobuko Yoshida. 2017. A Linear Decomposition of Multiparty Sessions for Safe Distributed Programming. In ECOOP. https://doi.org/10.4230/LIPIcs.ECOOP.2017.24 Google ScholarGoogle ScholarCross RefCross Ref
  54. Alceste Scalas and Nobuko Yoshida. 2016. Lightweight Session Programming in Scala. In 30th European Conference on Object-Oriented Programming (ECOOP 2016), Shriram Krishnamurthi and Benjamin S. Lerner (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 56). Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany. 21:1–21:28. isbn:978-3-95977-014-9 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2016.21 Google ScholarGoogle ScholarCross RefCross Ref
  55. Alceste Scalas and Nobuko Yoshida. 2019. Less Is More: Multiparty Session Types Revisited. In 46th ACM SIGPLAN Symposium on Principles of Programming Languages. 3, ACM, 30:1–30:29. https://doi.org/10.1145/3290343 Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Alceste Scalas, Nobuko Yoshida, and Elias Benussi. 2019. Verifying Message-passing Programs with Dependent Behavioural Types. In Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2019). ACM, New York, NY, USA. 502–516. isbn:978-1-4503-6712-7 https://doi.org/10.1145/3314221.3322484 Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Claude Stolze, Marino Miculan, and Pietro Di Gianantonio. 2021. Composable Partial Multiparty Session Types. In FACS 2021 Conference Proceedings. 13077, Springer. https://doi.org/10.1007/978-3-030-90636-8_3 Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Nicolas Tabareau, Mario Südholt, and Éric Tanter. 2014. Aspectual Session Types. In Proceedings of the 13th International Conference on Modularity (MODULARITY ’14). Association for Computing Machinery, New York, NY, USA. 193–204. isbn:9781450327725 https://doi.org/10.1145/2577080.2577085 Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. David Ungar and Randall B. Smith. 1987. Self: The Power of Simplicity. OOPSLA ’87. Association for Computing Machinery, New York, NY, USA. 227–242. isbn:0897912470 https://doi.org/10.1145/38765.38828 Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Malte Viering, Raymond Hu, Patrick Eugster, and Lukasz Ziarek. 2021. A Multiparty Session Typing Discipline for Fault-Tolerant Event-Driven Distributed Programming. Proc. ACM Program. Lang., 5, OOPSLA (2021), Article 124, oct, 30 pages. https://doi.org/10.1145/3485501 Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. A Yonezawa and M Tokoro. 1986. Object-oriented concurrent programming. The MIT Press. isbn:978-0262240260 Google ScholarGoogle Scholar
  62. Nobuko Yoshida and Lorenzo Gheri. 2020. A Very Gentle Introduction to Multiparty Session Types. In Distributed Computing and Internet Technology, Dang Van Hung and Meenakshi Dasciiacute Souza (Eds.). Springer International Publishing, Cham. 73–93. isbn:978-3-030-36987-3 https://doi.org/10.1007/978-3-030-36987-3_5 Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. Nobuko Yoshida, Raymond Hu, Rumyana Neykova, and Nicholas Ng. 2013. The Scribble Protocol Language. In Trustworthy Global Computing - 8th International Symposium, TGC 2013, Buenos Aires, Argentina, Martín Abadi and Alberto Lluch-Lafuente (Eds.) (Lecture Notes in Computer Science, Vol. 8358). Springer, 22–41. https://doi.org/10.1007/978-3-319-05119-2_3 Google ScholarGoogle ScholarDigital LibraryDigital Library
  64. Nobuko Yoshida, Fangyi Zhou, and Francisco Ferreira. 2021. Communicating Finite State Machines and an Extensible Toolchain for Multiparty Session Types. In Fundamentals of Computation Theory, Evripidis Bampis and Aris Pagourtzis (Eds.). Springer International Publishing, Cham. 18–35. isbn:978-3-030-86593-1 https://doi.org/10.1007/978-3-030-86593-1_2 Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Fangyi Zhou, Francisco Ferreira, Raymond Hu, Rumyana Neykova, and Nobuko Yoshida. 2020. Statically Verified Refinements for Multiparty Protocols. Proc. ACM Program. Lang., 4, OOPSLA (2020), Article 148, nov, 30 pages. https://doi.org/10.1145/3428216 Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Hybrid Multiparty Session Types: Compositionality for Protocol Specification through Endpoint Projection

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Article Metrics

        • Downloads (Last 12 months)59
        • Downloads (Last 6 weeks)19

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!