used to describe textual patterns using meta-characters
a way of describing some types of languages using a shorthand notation
describes the definition of a type of data, like an integer or string and a group of various pre-defined data types.