@hackage BNFC2.9.5

A compiler front-end generator.

The BNF Converter is a compiler construction tool generating a compiler front-end from a Labelled BNF grammar. It was originally written to generate Haskell code, but can also be used for generating Agda, C, C++, Java, Ocaml and XML code.

Given a Labelled BNF grammar the tool produces: an abstract syntax as a Haskell, Agda, C, C++, Ocaml module or Java package, a case skeleton for the abstract syntax in the same language, an Alex, Flex, JLex, JFlex, or ocamllex lexer generator file, a Happy, CUP, Bison, Antlr, ocamlyacc or menhir parser generator file, a pretty-printer as a Haskell, Agda, C, C++, Java, or Ocaml module, an XML representation, a LaTeX file containing a readable specification of the language.