Menhir is a LR(1) parser generator for OCaml. It is mostly compatible with the standard ocamlyacc and has the following enhancements: * it accepts LR(1) grammars, * it offers parameterized nonterminal symbols as well as a library of standard definitions, * it explains conflicts in terms of the grammar, * it allows grammar specifications to be split over multiple files and parametrized by OCaml modules, * it produces reentrant parsers.