A piece of software which reads in gramatical tokens and performs actions associated with those tokens. Parsers can be written with bison or by hand. Parsers usually rely heavily on a lexer as well.