English

Manifestly Phased Communication via Shared Session Types

Programming Languages 2021-11-29 v2

Abstract

Session types denote message protocols between concurrent processes, allowing a type-safe expression of inter-process communication. Although previous work demonstrate a well-defined notion of subtyping where processes have different perceptions of the protocol, these formulations were limited to linear session types where each channel of communication has a unique provider and client. In this paper, we extend subtyping to shared session types where channels can now have multiple clients instead of a single client. We demonstrate that this generalization can statically capture protocol requirements that span multiple phases of interactions of a client with a shared service provider, something not possible in prior proposals. Moreover, the phases are manifest in the type of the client.

Keywords

Cite

@article{arxiv.2101.06249,
  title  = {Manifestly Phased Communication via Shared Session Types},
  author = {Chuta Sano and Stephanie Balzer and Frank Pfenning},
  journal= {arXiv preprint arXiv:2101.06249},
  year   = {2021}
}

Comments

Extended and revised version of a paper presented at COORDINATION 2021

R2 v1 2026-06-23T22:12:49.565Z