the set of rules for how objects can be used according to their types
a set of types and the rules that govern their use in programs
common type system used to identify the data types you can use in a program