Gradual Session Types
Atsushi Igarashi (1), Peter Thiemann (2), Yuya Tsuda (1), Vasco T., Vasconcelos (3), Philip Wadler (4) ((1) Kyoto University, Japan, (2), University of Freiburg, Germany, (3) University of Lisbon, Portugal, (4), University of Edinburgh, Scotland)

TL;DR
Gradual session types enable seamless integration of static and dynamic typing in session-based communication systems, enhancing safety and flexibility in multi-language web and microservice applications.
Contribution
We introduce Gradual GV, a gradually typed extension of the GV session type system, with formal semantics and safety guarantees for mixed static and dynamic typing.
Findings
Type and communication safety are maintained.
Blame safety is achieved in the extended system.
A novel approach handles linearity with dynamic types.
Abstract
Session types are a rich type discipline, based on linear types, that lifts the sort of safety claims that come with type systems to communications. However, web-based applications and microservices are often written in a mix of languages, with type disciplines in a spectrum between static and dynamic typing. Gradual session types address this mixed setting by providing a framework which grants seamless transition between statically typed handling of sessions and any required degree of dynamic typing. We propose Gradual GV as a gradually typed extension of the functional session type system GV. Following a standard framework of gradual typing, Gradual GV consists of an external language, which relaxes the type system of GV using dynamic types, and an internal language with casts, for which operational semantics is given, and a cast-insertion translation from the former to the latter.…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
