Projects per year
Abstract / Description of output
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; an internal language with casts, for which operational semantics is given; and a cast-insertion translation from the former to the latter. We demonstrate type and communication safety as well as blame safety, thus extending previous results to functional languages with session-based communication. The interplay of linearity and dynamic types requires a novel approach to specifying the dynamics of the language.
Original language | English |
---|---|
Article number | e17 |
Number of pages | 56 |
Journal | Journal of Functional Programming |
Volume | 29 |
DOIs | |
Publication status | Published - 18 Nov 2019 |
Fingerprint
Dive into the research topics of 'Gradual session types'. Together they form a unique fingerprint.Projects
- 1 Finished
-
From Data Types to Session Types - A Basis for Concurrency and Distribution
20/05/13 → 19/11/20
Project: Research
Profiles
-
Philip Wadler, FRS
- School of Informatics - Chair of Theoretical Computer Science
- Laboratory for Foundations of Computer Science
- Foundations of Computation
Person: Academic: Research Active