Although Mathematica is in many ways an untyped language, there are standard "heads" (as revealed by the function Head) that are characteristic of and used throughout the system. Among these are "atomic" heads that may be considered analogous to types. These include: Integer, Real, Rational, and Complex for numeric data, as well as String and Symbol.
Machine-size Real and Integer data can be stored in .
Type patterns _Real, _Integer, _Complex and True | False can be given to Compile.