Categorical Continuation Semantics for Concurrency
Continuation semantics for simple programming languages can be axiomatized as a dialogue category: a symmetric monoidal category equipped with a negation operation. This axiomatization makes clear the relationship between game semantics, CPS transformations, and continuation monads. In this paper we extend dialogue categories with 2-categorical structure and concurrent primitives. This is inspired by a recent analysis of concurrency based on 2-categorical monads. We show that the fine-grained structure of dialogue categories, not generally available in other semantic models, can be exploited to give a type to concurrent primitives join and fork. Our main theorem is that this simple axiomatization induces a concurrent continuation 2-monad. We also show that this framework is expressive beyond call-by-value monadic programming. The definitions in this paper are illustrated by concrete constructions in concurrent game semantics, and our results give a formal categorical basis for concurrent strategies. From a more practical perspective, our approach suggests a candidate target language for linear CPS transformations of concurrent programming languages.
Institutions
- Centre National de la Recherche Scientifique (FR)
- École Normale Supérieure - PSL (FR)
- Sorbonne Université (FR)
- Université Sorbonne Paris Nord (FR)
- École Normale Supérieure (BI)
- Laboratoire de physique des lasers (FR)
- Laboratoire d'Informatique de Paris-Nord (FR)
Publication Details
- Journal
- DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
- Published
- 2025-01-01
- DOI
- https://doi.org/10.4230/lipics.fscd.2025.10
- Primary Topic
- Logic, programming, and type systems
- Type
- article
- Field-Weighted Citation Impact
- 0.00