Polymorphic Typing of Variables and References
Loading...
Authors
Smith, Geoffrey
Volpano, Dennis
Subjects
Advisors
Date of Issue
1996-05
Date
May 1996.
Publisher
Language
Abstract
In this article we consider the polymorphic type checking of an imperative language. Our lan- guage contains variables, first-class references (pointers), and first-class functions. Variables, as in traditional imperative languages, are implicitly dereferenced, and their addresses (L-values) are not first-class values. Variables are easier to type check than references and, in many cases, lead to more general polymorphic types. We present a polymorphic type system for our language and prove that it is sound. Programs that use variables sometimes require weak types, as in Tofte’s type system for Standard ML, but such weak types arise far less frequently with variables than with references.
Type
Description
The article of record as published may be found at http://dx.doi.org/
Series/Report No
Department
Computer Science (CS)
Organization
Identifiers
NPS Report Number
Sponsors
Funder
Format
Citation
ACM Transactions on Programming Languages and Systems, Vol. 18, No. 3, pp. 254-267, May 1996.
Distribution Statement
Rights
This publication is a work of the U.S. Government as defined in Title 17, United States Code, Section 101. Copyright protection is not available for this work in the United States.