Catalogue of Artificial Intelligence Techniques
Keywords: Strongly Typed Languages
Categories: Inference and Reasoning , Knowledge Representation , Programming Languages
Author(s): Kevin Mitchell
In a typed language, every value is partitioned into one or more sets called types. Every legal expression denotes a value, and hence has a type. Some languages require typing information to be supplied explicitly, and the types of subexpressions in an expression are then checked for consistency by a type checker. Other languages make use of a type inference system to determine this information. Programming languages in which the type of every expression can be determined by static program analysis are said to be statically scoped. Languages in which all expressions are type consistent are called strongly typed languages. Strong typing guarantees that no program can incur a type error at run time, a common source of bugs. Standard ML is an example of a strongly typed language.
- Cardelli, L. and Wegner, P., On understanding types, data abstraction, and polymorphism Computing Surveys 17 (1985) no.4, 471--522.