Dependent Session Types
Hanwen Wu, Hongwei Xi

TL;DR
This paper introduces the first formulation of dependent session types, combining linearity and duality guarantees without runtime checks, and demonstrates a practical implementation in ATS compiling to Erlang/Elixir.
Contribution
It presents a novel dependent session type system that ensures communication correctness without runtime overhead, suitable for practical distributed programming.
Findings
First dependent session type system with no runtime checks
Implementation in ATS compiling to Erlang/Elixir
Guarantees linearity and duality in communication protocols
Abstract
Session types offer a type-based discipline for enforcing communication protocols in distributed programming. We have previously formalized simple session types in the setting of multi-threaded -calculus with linear types. In this work, we build upon our earlier work by presenting a form of dependent session types (of DML-style). The type system we formulate provides linearity and duality guarantees with no need for any runtime checks or special encodings. Our formulation of dependent session types is the first of its kind, and it is particularly suitable for practical implementation. As an example, we describe one implementation written in ATS that compiles to an Erlang/Elixir back-end.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Distributed systems and fault tolerance · Security and Verification in Computing
