We introduce an extension of the intersection type discipline in which types may contain variables with upper and lower bounds, present an algorithm for deciding the subtype relation in the extended system, and prove that the algorithm is correct. Aein^°( DODf ffifo^iflKo^ t h e ^ R e s e a r V <i the Defense Advanced Research Projects Agency (UUU), AKPA Order No. 4976, monitored by the xxxxxxx under Contract No. N00014-84-K-0415. IhnrJie^fn^K °lL^?. contained in this document are those of the author and should not be interpreted as °? ^^'jfS^ e x P r e s s e d o r ^pHed, of the Office of Naval Research, the Defense Advanced Research Projects Agency or the U.S. Government. A Decision Procedure for the Subtype Relation on Intersection Types with Bounded Variables Benjamin C. Pierce CMU-CS-89-169 August 8, 1989 School of Computer Science Carnegie Mellon University Pi t tsburgh, PA 15213-3890 A b s t r a c t We introduce an extension of the intersection type discipline in which types may contain variables with upper and lower bounds, present an algorithm for deciding the subtype relation in the extended system, and prove that the algorithm is correct. This work was supported in part by the Office of Naval Research and the Defense Advanced Research Projects Agency (DOD) under contract number N00014-84-K-0415. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of DARPA or the U.S. Government.
[1]
Robin Milner,et al.
A Theory of Type Polymorphism in Programming
,
1978,
J. Comput. Syst. Sci..
[2]
John C. Reynolds,et al.
Syntactic control of interference
,
1978,
POPL.
[3]
Mario Coppo,et al.
Principal type-schemes and lambda-calculus semantics
,
1980
.
[4]
Mariangiola Dezani-Ciancaglini,et al.
A filter lambda model and the completeness of type assignment
,
1983,
Journal of Symbolic Logic.
[5]
Luca Cardelli,et al.
A Semantics of Multiple Inheritance
,
1984,
Inf. Comput..
[6]
Simona Ronchi Della Rocca,et al.
Principal Type Schemes for an Extended Type Theory
,
1984,
Theor. Comput. Sci..
[7]
Luca Cardelli,et al.
On understanding types, data abstraction, and polymorphism
,
1985,
CSUR.
[8]
John C. Reynolds,et al.
Preliminary design of the programming language Forsythe
,
1988
.
[9]
Luca Cardelli,et al.
A Semantics of Multiple Inheritance
,
1984,
Information and Computation.
[10]
John C. Reynolds,et al.
Syntactic Control of Inference, Part 2
,
1989,
ICALP.