Abstract
CAPABLE is lightweight mechanised imperative language that provides native support for Multiparty Session Types (MPSTs). Through mechanisation, we can explore and catalogue the changes required to extend similar languages with native support for MPSTs, as well as the interplay between the existing type-system and other novel extensions. Principally, our demo shows CAPABLE in action and what a language with native MPSTs can look like. We also look beneath the surface syntax and offer insight over how we created intrinsically typed sessions (and session types) within a dependently typed language. We show a compact well-scoped encoding of session types, mechanised proofs of soundness and completeness for projection, and how dependent types help with bidirectional type checking of typed sessions.
Original language | English |
---|---|
Number of pages | 7 |
Publication status | Published - 27 Oct 2023 |
Event | ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity - Lisbon, Portugal Duration: 22 Oct 2023 → 27 Oct 2023 https://2023.splashcon.org/ |
Conference
Conference | ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity |
---|---|
Abbreviated title | SPLASH 2023 |
Country/Territory | Portugal |
City | Lisbon |
Period | 22/10/23 → 27/10/23 |
Internet address |
Keywords
- mechanised imperative language
- Multiparty Session Types
- mechanisation