Type Destructors Benjamin C. Pierce
Martin Hofmann
Computer Science Department Indiana University Lindley Hall 215 Bloomington, IN 47405, USA
Fachbereich Mathematik Technische Hochschule Darmstadt Schlogartenstrae 7 D-64289 Darmstadt, Germany
[email protected] [email protected] Indiana University CSCI Technical Report # 502 February 4, 1998
Abstract We study a variant of System F that integrates and generalizes several existing proposals for calculi with structural typing rules. To the usual type constructors (!, , All, Some, Rec) we add a number of type destructors, each internalizing a useful fact about the subtyping relation. For example, in F with products every closed subtype of a product ST must itself be a product S0 T0 with S0