Comparing Libraries For Generic Programming In Haskell
Stc
Date: 2008-09-18
Time: 11:00
Room: BBL room 471
Speaker: Alexey Rodriguez Yakushev
Title: Comparing Libraries For Generic Programming In Haskell
Abstract
Datatype-generic programming is defining functions that depend on the
structure, or ``shape'', of datatypes. It has been around for more
than 10 years, and a lot of progress has been made, in particular in
the lazy functional programming language Haskell. There are more than
10 proposals for generic programming libraries or language extensions
for Haskell. To compare and characterize the many generic programming
libraries in a typed functional language, we introduce a set of
criteria and develop a generic programming benchmark: a set of
characteristic examples testing various facets of datatype-generic
programming. We have implemented the benchmark for nine existing
Haskell generic programming libraries and present the evaluation of
the libraries. The comparison is useful for reaching a common
standard for generic programming, but also for a programmer who has
to choose a particular approach for datatype-generic programming.