Types, Abstraction and Parametric Polymorphism
Where it appeared
| Published in | Information Processing 83 |
|---|
| Publisher | North-Holland |
|---|
| Pages | 513--523 |
|---|
Abstract
We explore the thesis that type structure is a syntactic discipline for maintaining levels of abstraction. Traditionally, this view has been formalized algebraically, but the algebraic approach fails to encompass higher-order functions. For this purpose, it is necessary to generalize homomorphic functions to relations; the result is an "abstraction" theorem that is applicable to the typed lambda calculus and various extensions, including user-defined types. Finally, we consider polymorphic functions, and show that the abstraction theorem captures Strachey's concept of parametric, as opposed to ad hoc, polymorphism.