arXiv · 2501.17741
Multiparty Session Typing, Embedded (Technical Report)
Abstract
Multiparty session typing (MPST) is a method to make concurrent programming simpler. The idea is to use type checking to automatically detect safety and liveness violations of implementations relative to specifications. In practice, the premier approach to combine MPST with mainstream languages -- in the absence of native support -- is based on external DSLs and associated tooling. In contrast, we study the question of how to support MPST by using internal DSLs. Answering this question positively, this paper presents the mpst.embedded library: it leverages Scala's lightweight form of dependent typing, called match types, to embed MPST directly into Scala. Our internal-DSL-based approach avoids programming friction and leaky abstractions of the external-DSL-based approach for MPST.
Explore related subjects
Keep this discovery
Sung-Shik Jongmans. 2025-01-29. Multiparty Session Typing, Embedded (Technical Report). https://arxiv.org/abs/2501.17741
Cite the original work for its findings. Save a collection to share your selection of sources.