BNFC-2.9.6.2: 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.
Modules
BNFC-2.9.6.2
- BNFC
- BNFC.Abs
- Backend
- BNFC.Backend.Agda
- BNFC.Backend.Base
- BNFC.Backend.C
- CPP
- BNFC.Backend.Common
- BNFC.Backend.Haskell
- BNFC.Backend.HaskellGADT
- BNFC.Backend.Java
- BNFC.Backend.Java.CFtoAbstractVisitor
- BNFC.Backend.Java.CFtoAllVisitor
- BNFC.Backend.Java.CFtoAntlr4Lexer
- BNFC.Backend.Java.CFtoAntlr4Parser
- BNFC.Backend.Java.CFtoComposVisitor
- BNFC.Backend.Java.CFtoCup15
- BNFC.Backend.Java.CFtoFoldVisitor
- BNFC.Backend.Java.CFtoJLex15
- BNFC.Backend.Java.CFtoJavaAbs15
- BNFC.Backend.Java.CFtoJavaPrinter15
- BNFC.Backend.Java.CFtoVisitSkel15
- BNFC.Backend.Java.RegToAntlrLexer
- BNFC.Backend.Java.RegToJLex
- BNFC.Backend.Java.Utils
- BNFC.Backend.Latex
- BNFC.Backend.OCaml
- BNFC.Backend.Pygments
- BNFC.Backend.TreeSitter
- BNFC.Backend.TreeSitter.CFtoTreeSitter
- BNFC.Backend.TreeSitter.MatchesEmpty Identifies and transforms rules which match the empty string, as required by Treesitter.
- BNFC.Backend.TreeSitter.RegToJSReg
- BNFC.Backend.Txt2Tag
- BNFC.Backend.XML
- BNFC.CF
- Check
- BNFC.GetCF
- BNFC.Lex
- BNFC.Lexing
- BNFC.License
- BNFC.Options
- BNFC.Par
- BNFC.PrettyPrint
- BNFC.Print
- BNFC.Regex
- BNFC.TypeChecker
- BNFC.Utils