How should I read type system notation?

Type systems in programming languages are sets of rules that operate on the syntax of the language. The syntax includes expressions and types, and a type system defines the relationship between them. The typing relation, written as e:τ, represents that expression e has type τ. Typing rules capture the intuitive understanding of what expressions make sense and what do not. They can be used to construct formal proofs about the properties of a type system. Judgments can be interpreted as an algorithm for typechecking, mapping an expression to its type. Contexts are used to keep track of the types of variables in scope.

https://langdev.stackexchange.com/questions/2692/how-should-i-read-type-system-notation

To top