Live functional programming with typed holes
Live programming environments aim to provide programmers (and sometimes audiences)
with continuous feedback about a program's dynamic behavior as it is being edited. The …
with continuous feedback about a program's dynamic behavior as it is being edited. The …
Statically verified refinements for multiparty protocols
With distributed computing becoming ubiquitous in the modern era, safe distributed
programming is an open challenge. To address this, multiparty session types (MPST) …
programming is an open challenge. To address this, multiparty session types (MPST) …
Gradual typing with union and intersection types
G Castagna, V Lanvin - Proceedings of the ACM on Programming …, 2017 - dl.acm.org
We propose a type system for functional languages with gradual types and set-theoretic type
connectives and prove its soundness. In particular, we show how to lift the definition of the …
connectives and prove its soundness. In particular, we show how to lift the definition of the …
Gradual typing: a new perspective
G Castagna, V Lanvin, T Petrucciani… - Proceedings of the ACM on …, 2019 - dl.acm.org
We define a new, more semantic interpretation of gradual types and use it to``gradualize''two
forms of polymorphism: subtyping polymorphism and implicit parametric polymorphism. In …
forms of polymorphism: subtyping polymorphism and implicit parametric polymorphism. In …
Type-driven gradual security with references
In security-typed programming languages, types statically enforce noninterference between
potentially conspiring values, such as the arguments and results of functions. But to adopt …
potentially conspiring values, such as the arguments and results of functions. But to adopt …
Graduality and parametricity: together again for the first time
Parametric polymorphism and gradual typing have proven to be a difficult combination, with
no language yet produced that satisfies the fundamental theorems of each: parametricity …
no language yet produced that satisfies the fundamental theorems of each: parametricity …
Gradual parametricity, revisited
Bringing the benefits of gradual typing to a language with parametric polymorphism like
System F, while preserving relational parametricity, has proven extremely challenging: first …
System F, while preserving relational parametricity, has proven extremely challenging: first …
A spectrum of type soundness and performance
B Greenman, M Felleisen - Proceedings of the ACM on Programming …, 2018 - dl.acm.org
The literature on gradual typing presents three fundamentally different ways of thinking
about the integrity of programs that combine statically typed and dynamically typed code …
about the integrity of programs that combine statically typed and dynamically typed code …
The high-level benefits of low-level sandboxing
Sandboxing is a common technique that allows low-level, untrusted components to safely
interact with trusted code. However, previous work has only investigated the low-level …
interact with trusted code. However, previous work has only investigated the low-level …
Gradualizing the calculus of inductive constructions
M Lennon-Bertrand, K Maillard, N Tabareau… - ACM Transactions on …, 2022 - dl.acm.org
We investigate gradual variations on the Calculus of Inductive Construction (CIC) for swifter
prototyping with imprecise types and terms. We observe, with a no-go theorem, a crucial …
prototyping with imprecise types and terms. We observe, with a no-go theorem, a crucial …