flex - The Fast Lexical Analyzer (http://flex.sourceforge.net/) and bison - GNU parser generator (http://www.gnu.org/software/bison/)