Generic Programming - An Introduction

Roland Backhouse, Patrik Jansson, Johan Jeuring and Lambert Meertens.

Bibtex, Full text paper ( .pdf, .ps, .ps.gz).

Contents

  1. Introduction
    1. The Abstraction-Specialisation Cycle
    2. Genericity in Programming Languages
    3. Path Problems
    4. The Plan
    5. Why Generic Programming?
  2. Algebras, Functors and Datatypes
    1. Algebras and Homomorphisms
    2. Functors
    3. Polynomial Functors
    4. Datatypes Generically
    5. A Simple Polytypic Program
  3. PolyP
    1. Regular Functors in PolyP
    2. An Example: psum
    3. Basic Polytypic Functions
    4. Type Checking Polytypic Functions
    5. More Examples of Polytypic Functions
    6. PolyLib: a Library of Polytypic Functions
  4. Generic Unification
    1. Monads and Terms
    2. Generic Unification
  5. From Functions to Relations
    1. Why Relations?
    2. Parametric Polymorphism
    3. Relators
    4. Occurs-in
  6. Solutions to Exercises

Last modified: Fri Dec 10 12:39:29 MET 1999 by
Patrik Jansson / NOpatrikjSP@AMchalmers.se