A parser generator and parser for LR(1) and LALR(1) grammars. It can handle epsilon productions, and gives the same parsing tables and conflicts of the Unix yacc tool (possibly with different state numbers).