"Generics for the Masses" (GM) and "Scrap your Boilerplate" (SYB) are generic programming approaches based on some ingenious applications of Haskell type class...
Invertible programming occurs in the area of data conversion where it is required that the conversion in one direction is the inverse of the other. For that purpose, we introduce ...
Artem Alimarine, Sjaak Smetsers, Arjen van Weelden...
Abstract. We propose c2-calculus, which is a second-order polymorphic call-by-value calculus with extensional universal types. Unlike product types or function types in call-by-val...
The `Scrap your boilerplate' approach to generic programming allows the programmer to write generic functions that can traverse arbitrary data structures, and yet have type-s...
The aim of our work is to be able to do fully formal, machine verified proofs over Generic Haskellstyle polytypic programs. In order to achieve this goal, we embed polytypic prog...