A type-based approach to termination uses sized types: an ordinal bound for the size of a data structure is stored in its type. A recursive function over a sized type is accepted i...
program constraints are defined over a program’s abstract syntax tree. The JAVACOP compiler automatically enforces these constraints on programs during compilation. The JAVACOP ...
Shane Markstrum, Daniel Marino, Matthew Esquivel, ...
programming languages community is vigorously pursuing ways to incorporate F!-style indexed types into programming languages. This paper advocates Concoqtion, a practical approach ...
Emir Pasalic, Jeremy G. Siek, Seth Fogarty, Walid ...
We propose a novel approach based on coinductive logic to specify type systems of programming languages. The approach consists in encoding programs in Horn formulas which are inter...
Haskell's type classes allow ad-hoc overloading, or typeindexing, of functions. A natural generalisation is to allow type-indexing of data types as well. It turns out that th...
Manuel M. T. Chakravarty, Gabriele Keller, Simon L...