Sums of uncertainty: refinements go gradual
KA Jafery, J Dunfield - ACM SIGPLAN Notices, 2017 - dl.acm.org
A long-standing shortcoming of statically typed functional languages is that type checking
does not rule out pattern-matching failures (run-time match exceptions). Refinement types …
does not rule out pattern-matching failures (run-time match exceptions). Refinement types …
[PDF][PDF] Ornaments for proof reuse in Coq
Ornaments express relations between inductive types with the same inductive structure. We
implement fully automatic proof reuse for a particular class of ornaments in a Coq plugin …
implement fully automatic proof reuse for a particular class of ornaments in a Coq plugin …
A principled approach to ornamentation in ML
T Williams, D Rémy - Proceedings of the ACM on Programming …, 2017 - dl.acm.org
Ornaments are a way to describe changes in datatype definitions reorganizing, adding, or
dropping some pieces of data so that functions operating on the bare definition can be …
dropping some pieces of data so that functions operating on the bare definition can be …
Refactoring functional programs with ornaments
A Williams - 2020 - inria.hal.science
Ornaments provide a way to express transformations of inductive datatypes that reorganize,
specialize, and add fields to already existing datatypes. From such a transformation, we …
specialize, and add fields to already existing datatypes. From such a transformation, we …
[PDF][PDF] A Principled approach to Ornamentation in ML
I THOMAS WILLIAMS, D RÉMY - gallium.inria.fr
Ornaments are a way to describe changes in datatype definitions reorganizing, adding, or
dropping some pieces of data so that functions operating on the bare definition can be …
dropping some pieces of data so that functions operating on the bare definition can be …
[PDF][PDF] A Principled approach to Ornamentation in ML
D RÉMY - 2018 - pauillac.inria.fr
Inductive datatypes and parametric polymorphism are two key features introduced in the ML
family of languages in the 1980's, at the core of the two popular languages OCaml and …
family of languages in the 1980's, at the core of the two popular languages OCaml and …
Ghostbuster: A tool for simplifying and converting GADTs
Generalized Algebraic Data Types, or simply GADTs, can encode non-trivial properties in
the types of the constructors. Once such properties are encoded in a datatype, however, all …
the types of the constructors. Once such properties are encoded in a datatype, however, all …
[PDF][PDF] A Meta-Language for Ornamentation in ML
T Williams, D Rémy - cristal.inria.fr
Ornaments are a way to describe changes in datatype definitions that preserve their
recursive structure, reorganizing, adding, or dropping some pieces of data so that functions …
recursive structure, reorganizing, adding, or dropping some pieces of data so that functions …