| Type inference with subtypes |
| Full text |
Pdf
(918 KB)
|
| Source
|
Annual Symposium on Principles of Programming Languages
archive
Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
table of contents
San Diego, California, United States
Pages: 88 - 97
Year of Publication: 1988
ISBN:0-89791-252-7
|
|
Author
|
|
R. Stansifer
|
Department of Computer Sciences, Purdue University, West Lafayette, IN
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 6, Downloads (12 Months): 23, Citation Count: 18
|
|
|
ABSTRACT
We give an algorithm for type inference in a language with functions, records, and variant records. A similar language was studied by Cardelli who gave a type checking algorithm. This language is interesting because it captures aspects of object-oriented programming using subtype polymorphism. We give a type system for deriving types of expressions in the language and prove the type inference algorithm is sound, i.e., it returns a type derivable from the proof system. We also prove that the type the algorithm finds is a “principal” type, i.e., one which characterizes all others. The approach taken here is due to Milner for universal polymorphism. The result is a synthesis of subtype polymorphism and universal polymorphism.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
| |
3
|
Boehm, Hans-Juergen. "Partial Polymorphic Type In~erence is Undecidable." Proceedings of the 26th Symposium of Foundations of Computer Sc/ence, 1985, pages 339-345.
|
 |
4
|
|
| |
5
|
|
| |
6
|
Cardelli, Luca. "Basic po|ymorphi~ typechecking." Polymorphism: The ML//LCF//HOPE Newsletter, volume 2, number 1, january 1985.
|
 |
7
|
|
| |
8
|
tIindley, Roger :lames. "The principal type-scheme of an object in combinatory logic." Transactions of the American Mathematical Society, "~olume 146, December 1969, pages 29-60.
|
| |
9
|
Milner, Robin. "A theory of type polymorphism in programming." Journal of Computer and System Science, volume 17, number 3, 1978, pages 348-375.
|
| |
10
|
Milner, Robin. "The standard ML core language (revised)." Polymorph/sm: The ML/LCF/Hope Newsletter, volume 2, number 2, October 1985. (Also Edinburgh report ECS-LFCS-86-2, March 1986.)
|
 |
11
|
|
| |
12
|
Wand, Mitchell. "Complete type inference for simple objects." In Proceedings of the 2nd IEEE Symposium on Logic in Computer Science, 1987, pages 37-44.
|
|