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 …

[PDF][PDF] Ornaments for proof reuse in Coq

T Ringer, N Yazdani, J Leo… - … Conference on Interactive …, 2019 - drops.dagstuhl.de
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 …

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 …

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 …

[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 …

[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 …

Ghostbuster: A tool for simplifying and converting GADTs

TAK Zakian, TL McDonell, M Cimini… - Journal of Functional …, 2018 - cambridge.org
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 …

[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 …