Introduction
Representing datatypes
Derived and fundamental representation types
Individual fields of constructors: K1
Meta information: M1
Additional generic representation type constructors
Empty datatypes: V1
Constructors without fields: U1
Representation of types with many constructors or many fields
Defining datatype-generic functions
Definition of the generic representation types
Generic instances
The wrapper and generic default
Omitting generic instances
Generic constructor classes
Representation of * -> *
types
Representation of unlifted types