Abstract
Many language implementations, like C++ and Java, check the types of values and operations to be sure each operation is supported for the types of its operands. An important feature of Standard ML is the type inference system which is somewhat like the type checkers of C++ and Java, but a bit more powerful. A type checker checks the types written by the programmer to be sure each type declaration is consistent with the operations being performed, values being passed to functions, and the values being returned. Compilers for Java and C++ even infer the types of some expressions when polymorphic operators are used. For instance, the addition operator has multiple result types depending on the types of its operands.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsAuthor information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this chapter
Cite this chapter
Lee, K.D. (2017). Standard ML Type Inference. In: Foundations of Programming Languages. Undergraduate Topics in Computer Science. Springer, Cham. https://doi.org/10.1007/978-3-319-70790-7_8
Download citation
DOI: https://doi.org/10.1007/978-3-319-70790-7_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-70789-1
Online ISBN: 978-3-319-70790-7
eBook Packages: Computer ScienceComputer Science (R0)