Technical Reports (CIS)

Document Type

Technical Report

Date of this Version

August 1990


University of Pennsylvania Department of Computer and Information Science Technical Report No. MS-CIS-90-62.


We consider the problem of representing heterogeneous collections of objects in a typed polymorphic programming language in such a way that common properties of members of a collection, such as having commonly named field with a common type can be expressed in the type system. The use of such collections is widespread in object-oriented and database programming and has so far been achieved in statically typed systems only through the use of a single dynamic type, which effectively hides all the structure of a value. In this paper we exploit a system of types and kinds (sets of types) to represent dynamic values with some known properties. The type system is shown to be sound and to have a complete type inference algorithm.



Date Posted: 23 August 2007