Prototyping Generic Programming in Template Haskell
Artikel i vetenskaplig tidskrift, 2004

Generic Programming deals with the construction of programs that can be applied to many different datatypes. This is achieved by parameterizing the generic programs by the structure of the datatypes on which they are to be applied. Programs that can be defined generically range from simple map functions through pretty printers to complex XML tools. The design space of generic programming languages is largely unexplored, partly due to the time and effort required to implement such a language. In this paper we show how to write flexible prototype implementations of two existing generic programming languages, PolyP and Generic Haskell, using Template Haskell, an extension to Haskell that enables compile-time meta-programming. In doing this we also gain a better understanding of the differences and similarities between the two languages.


Ulf Norell

Chalmers, Institutionen för datavetenskap, Funktionell programmering

Patrik Jansson

Chalmers, Institutionen för datavetenskap, Programmeringslogik

Chalmers, Institutionen för datavetenskap, Funktionell programmering

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

03029743 (ISSN) 16113349 (eISSN)

Vol. 3125 314-333
3-540-22380-0 (ISBN)


Datavetenskap (datalogi)





Mer information