Structural polymorphism in Generic Haskell
- Andres Loeh
Using `Generic Haskell`, an extension of the functional programming language Haskell, one can define `structurally polymorphic functions`: functions that take a type argument and are defined by induction on the structure of datatypes.
Using this mechanism, functions such as equality, comparison, parsing and pretty printing, but also several forms of traversals and queries on data structures can be expressed.
Such functions are defined once, in a type-safe way, and can then be used on all Haskell datatypes.
The talk will introduce structural polymorphism in contrast to parametric and ad-hoc polymorphism, both of which are already supported in standard Haskell. The core features of Generic Haskell will be highlighted using several examples of type-indexed functions.
Speaker Details
Andres Loeh is a postdoctoral researcher at the University of Bonn, working on the project “A generic functional programming language” funded by the German Research Foundation. He received his PhD in 2004 from Utrecht University in the Netherlands on generic programming in Haskell. His research is focused on programming language design, static type (inference) systems, and data generic (or polytypic) programming.
Andres spends most of his free time on trains to be with his wife Clara, who studies for a PhD in mathematics at the University of Muenster.
-
-
Jeff Running
-
Watch Next
-
-
-
Accelerating MRI image reconstruction with Tyger
- Karen Easterbrook,
- Ilyana Rosenberg
-
-
-
-
-
-
-