- document
-
Escot, L.F.B. (author), Cockx, J.G.H. (author)Datatype-generic programming makes it possible to define a construction once and apply it to a large class of datatypes. It is often used to avoid code duplication in languages that encourage the definition of custom datatypes, in particular state-of-the-art dependently typed languages where one can have many variants of the same datatype...journal article 2022
- document
-
Rouvoet, A.J. (author), Krebbers, R.J. (author), Visser, Eelco (author)To avoid compilation errors it is desirable to verify that a compiler is type correct-i.e., given well-typed source code, it always outputs well-typed target code. This can be done intrinsically by implementing it as a function in a dependently typed programming language, such as Agda. This function manipulates data types of well-typed source...journal article 2021
- document
-
Rouvoet, A.J. (author), Poulsen, C.B. (author), Krebbers, R.J. (author), Visser, Eelco (author)An intrinsically-typed definitional interpreter is a concise specification of dynamic semantics, that is executable and type safe by construction. Unfortunately, scaling intrinsically-typed definitional interpreters to more complicated object languages often results in definitions that are cluttered with manual proof work. For linearly-typed...working paper 2020
- document
-
Cockx, J.G.H. (author)Dependently typed languages such as Coq and Agda can statically guarantee the correctness of our proofs and programs. To provide this guarantee, they restrict users to certain schemes a- such as strictly positive datatypes, complete case analysis, and well-founded induction a- that are known to be safe. However, these restrictions can be too...conference paper 2020