lemon is an LALR(1) parser generator for C or C++. It does the same job as bison and yacc. But lemon is
not another bison or yacc clone. It uses a different grammar syntax which is designed to reduce the
number of coding errors. lemon also uses a more sophisticated parsing engine that is faster than yacc
and bison and which is both reentrant and thread-safe. Furthermore, lemon implements features that can
be used to eliminate resource leaks, making is suitable for use in long-running programs such as
graphical user interfaces or embedded controllers.
lemon will read the grammer from input and write out a parser for that grammar in the C language.