ACM Home Page
Please provide us with feedback. Feedback
Type inference with subtypes
Full text PdfPdf (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
SIGPLAN: ACM Special Interest Group on Programming Languages
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 21,   Citation Count: 18
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/73560.73568
What is a DOI?

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.

CITED BY  18