Subtyping appears in a variety of programming languages, in the form of the ‘automatic coercion’ of integers to reals, Pascal subranges, and subtypes arising from class hierarchies in languages with inheritance. A general framework based on untyped lambda calculus provides a simple semantic model of subtyping and is used to demonstrate that an extension of Curry's type inference rules are semantically complete. An algorithm G for computing the most general typing associated with any given expression, and a restricted, optimized algorithm GA using only atomic subtyping hypotheses are developed. Both algorithms may be extended to insert type conversion functions at compile time or allow polymorphic function declarations as in ML. © 1991, Cambridge University Press. All rights reserved.
CITATION STYLE
Mitchell, J. C. (1991). Type inference with simple subtypes. Journal of Functional Programming, 1(3), 245–285. https://doi.org/10.1017/S0956796800000113
Mendeley helps you to discover research relevant for your work.