Multiparty Session Typing, Embedded (Technical Report)

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autor principal: Jongmans, Sung-Shik
Formato: Preprint
Publicado: 2025
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866910804764262400
author Jongmans, Sung-Shik
author_facet Jongmans, Sung-Shik
contents 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.
format Preprint
id arxiv_https___arxiv_org_abs_2501_17741
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Multiparty Session Typing, Embedded (Technical Report)
Jongmans, Sung-Shik
Programming Languages
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.
title Multiparty Session Typing, Embedded (Technical Report)
topic Programming Languages
url https://arxiv.org/abs/2501.17741