Misplaced Pages

Type variable

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

In type theory and programming languages, a type variable is a mathematical variable ranging over types. Even in programming languages that allow mutable variables, a type variable remains an abstraction, in the sense that it does not correspond to some memory locations.

Programming languages that support parametric polymorphism make use of universally quantified type variables. Languages that support existential types make use of existentially quantified type variables. For example, the following OCaml code defines a polymorphic identity function that has a universally quantified type, which is printed by the interpreter on the second line:

# let id x = x;;
val id : 'a -> 'a = <fun>

In mathematical notation, the type of the function id is a . a a {\displaystyle \forall a.a\to a} , where a {\displaystyle a} is a type variable.

See also

Γ {\displaystyle \Gamma \!\vdash }

This programming language theory or type theory-related article is a stub. You can help Misplaced Pages by expanding it.

Categories: