This paper presents the design of G, a new language specifically created for generic programming. We review and identify important language features of C++ and Haskell in light o...
To improve the quality of type error messages in functional programming languages, we propose four techniques which influence the behaviour of constraint-based type inference proc...
Bastiaan Heeren, Jurriaan Hage, S. Doaitse Swierst...
Common record systems only provide access to individual record fields. However, it is often useful to have generic record combinators, that is, functions that work with complete ...
Generalized algebraic data types (GADTs) have received much attention recently in the functional programming community. They generalize the (type) parameterized algebraic datatype...
Abstract. Binding-time polymorphism enables a highly flexible bindingtime analysis for offline partial evaluation. This work provides the tools to translate this flexibility into...