The Polytypic Programming home page has moved to a new address .
Outdated information follows.
A number of functions have to be written over and over again on different datatypes. Examples of such functions are pretty printers, parsers, equality functions, most general unifiers, pattern matchers, rewriting functions, etc. These functions are examples of so-called polytypic functions. A polytypic function is a function that is defined by induction on the structure of user-defined datatypes. Furthermore, we are developing methods for writing polytypic functions.