Sciweavers

MPC
2015
Springer

Hierarchy in Generic Programming Libraries

8 years 6 months ago
Hierarchy in Generic Programming Libraries
Generic programming (GP) is a form of abstraction in programming languages that serves to reduce code duplication by exploiting the regular structure of algebraic datatypes. Several different approaches to GP in Haskell have surfaced, giving rise to the problem of code duplication across GP libraries. Given the original goals of GP, the is a rather unfortunate turn of events. Fortunately, we can convert between the different representations of each approach, which allows us to “borrow” generic functions from different approaches, avoiding the need to reimplement every generic function in every single GP library. In previous work we have shown how existing GP libraries relate to each other. In this paper we go one step further and advocate “hierarchical GP”: through proper design of different GP approaches, each library can fit neatly in a hierarchy, greatly minimizing the amount of supporting infrastructure necessary for each approach, and allowing each library to be specific...
José Pedro Magalhães, Andres Lö
Added 15 Apr 2016
Updated 15 Apr 2016
Type Journal
Year 2015
Where MPC
Authors José Pedro Magalhães, Andres Löh
Comments (0)