This is not the latest version of this item. The latest version can be found here.
What are principal typings and what are they good for?
Name
MIT-LCS-TM-532.pdf
Size
1.88 MB
Format
Adobe PDF
Checksum (MD5)
8da50feb096a02f4b6c18bf7b0cd0df9
Author(s)
Jim, Trevor
Date Issued
August 1995
Series/Report no.
MIT-LCS-TM-532
Abstract
We demonstrate the pragmatic value of the principal typing property, a property more general than ML's principal type property, by studying a type system with principal typings. The type system is based on rank 2 intersection types and is closely related to ML. Its principal typing property provides elegant support for separate compilation, including "smartest recompilation" and incremental type inference, and for accurate type error messages. Moreover, it motivates a novel rule for typing recursive definitions that can type many examples of polymorphic recursion. Type inference remains decidable; this is surprising, since type inference for ML plus polymorphic recursion is undecidable.
Persistent DSpace Link