Multiparty Session Programming with Global Protocol Combinators (Artifact)

Authors Keigo Imai , Rumyana Neykova , Nobuko Yoshida , Shoji Yuen

Thumbnail PDF

Artifact Description

  • Filesize: 307 kB
  • 2 pages

Document Identifiers

Author Details

Keigo Imai
  • Gifu University, Japan
Rumyana Neykova
  • Brunel University London, United Kingdom
Nobuko Yoshida
  • Imperial College London, United Kingdom
Shoji Yuen
  • Nagoya University, Japan


We thank David Castro-Perez, Nicolas Lagaillardie, Julien Lange, and anonymous reviewers for their comments on an early version of this artifact. Our work is partially supported by the first author’s visitor funding to Imperial College London and Brunel University London supported by Gifu University, VeTSS, JSPS KAKENHI Grant Numbers JP17H01722, JP17K19969 and JP17K12662, JSPS Short-term Visiting Fellowship S19068, EPSRC Doctoral Prize Fellowship, and EPSRC EP/K011715/1, EP/K034413/1, EP/L00058X/1, EP/N027833/1, EP/N028201/1, EP/T006544/1 and EP/T014709/1.

Cite AsGet BibTex

Keigo Imai, Rumyana Neykova, Nobuko Yoshida, and Shoji Yuen. Multiparty Session Programming with Global Protocol Combinators (Artifact). In Special Issue of the 34th European Conference on Object-Oriented Programming (ECOOP 2020). Dagstuhl Artifacts Series (DARTS), Volume 6, Issue 2, pp. 18:1-18:2, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2020)



In the paper "Multiparty Session Programming with Global Protocol Combinators", we introduce a library, ocaml-mpst for programming with global combinators - a set of functions for writing and verifying multiparty protocols in OCaml. Local behaviours for all processes in a protocol are inferred at once from a global combinator. Our approach enables fully-static verification and implementation of the whole protocol, from the protocol specification to the process implementations, to happen in the same language. This artifact is the source code of ocaml-mpst, with all the examples and benchmarks discussed in the paper.

Subject Classification

ACM Subject Classification
  • Software and its engineering → Concurrent programming structures
  • Theory of computation → Type structures
  • Software and its engineering → Functional languages
  • Software and its engineering → Polymorphism
  • Multiparty Session Types
  • Communication Protocol
  • Concurrent and Distributed Programming
  • OCaml


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads
Questions / Remarks / Feedback

Feedback for Dagstuhl Publishing

Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail