Package2.9.6.3Parsing
BNFC
A compiler front-end generator.
- Version2.9.6.3
- CategoryParsing
- LicenceBSD-3-Clause
- Maintainerbnfc-dev@googlegroups.com
- Homepagebnfc.digitalgrammars.com
- Pinned byhackage BNFC 2.9.6.3
- Sourcehackage.haskell.org/package/BNFC-2.9.6.3
Modules
- BNFC.AbsThe abstract syntax of language BNFC.
- BNFC.Backend.AgdaAgda backend. Generate bindings to Haskell data types for use in Agda. Example for abstract syntax generated in Haskell backend: module C…
- BNFC.Backend.BaseBackend base module. Defines the type of the backend and some useful functions.
- BNFC.Backend.C
- BNFC.Backend.C.CFtoBisonC
- BNFC.Backend.C.CFtoCAbs
- BNFC.Backend.C.CFtoCPrinter
- BNFC.Backend.C.CFtoCSkel
- BNFC.Backend.C.CFtoFlexC
- BNFC.Backend.C.CommonCommon definitions for the modules of the C backend.
- BNFC.Backend.C.RegToFlex
- BNFC.Backend.CPP.CommonCommon to the C++ backends.
- BNFC.Backend.CPP.Makefile
- BNFC.Backend.CPP.Naming
- BNFC.Backend.CPP.NoSTL
- BNFC.Backend.CPP.NoSTL.CFtoCPPAbs
- BNFC.Backend.CPP.PrettyPrinter
- BNFC.Backend.CPP.STL
- BNFC.Backend.CPP.STL.CFtoCVisitSkelSTL
- BNFC.Backend.CPP.STL.CFtoSTLAbs
- BNFC.Backend.CPP.STL.STLUtils
- BNFC.Backend.CommonFunctions common to different backends.
- BNFC.Backend.Common.Makefile
- BNFC.Backend.Common.NamedVariables
- BNFC.Backend.Common.OOAbstract
- BNFC.Backend.Common.StrUtils
- BNFC.Backend.Haskell
- BNFC.Backend.Haskell.CFtoAbstract
- BNFC.Backend.Haskell.CFtoAlex3
- BNFC.Backend.Haskell.CFtoHappy
- BNFC.Backend.Haskell.CFtoLayout
- BNFC.Backend.Haskell.CFtoPrinter
- BNFC.Backend.Haskell.CFtoTemplate
- BNFC.Backend.Haskell.HsOpts
- BNFC.Backend.Haskell.MkErrM
- BNFC.Backend.Haskell.Utils
- BNFC.Backend.HaskellGADT
- BNFC.Backend.HaskellGADT.CFtoAbstractGADT
- BNFC.Backend.HaskellGADT.CFtoTemplateGADT
- BNFC.Backend.HaskellGADT.HaskellGADTCommon
- BNFC.Backend.JavaTop-level for the Java back end. $Id: JavaTop15.hs,v 1.12 2007/01/08 18:20:23 aarne Exp $
- 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.OCaml.CFtoOCamlAbs
- BNFC.Backend.OCaml.CFtoOCamlLex
- BNFC.Backend.OCaml.CFtoOCamlPrinter
- BNFC.Backend.OCaml.CFtoOCamlShow
- BNFC.Backend.OCaml.CFtoOCamlTemplate
- BNFC.Backend.OCaml.CFtoOCamlTest
- BNFC.Backend.OCaml.CFtoOCamlYacc
- BNFC.Backend.OCaml.OCamlUtil
- BNFC.Backend.Pygments
- BNFC.Backend.TreeSitter
- BNFC.Backend.TreeSitter.CFtoTreeSitter
- BNFC.Backend.TreeSitter.RegToJSReg
- BNFC.Backend.Txt2Tag
- BNFC.Backend.XML
- BNFC.CF
- BNFC.Check.EmptyTypesCheck whether generated AST will have empty types. Internal rules are included. We compute by a saturation algorithm which token types ar…
- BNFC.GetCFCheck LBNF input file and turn it into the CF internal representation.
- BNFC.Lex
- BNFC.Lexing
- BNFC.License
- BNFC.Options
- BNFC.Par
- BNFC.PrettyPrintExtends 'Text.PrettyPrint'.
- BNFC.PrintPretty-printer for BNFC.
- BNFC.RegexTools to manipulate regular expressions.
- BNFC.TypeCheckerType checker for defined syntax constructors define f xs = e.
- BNFC.Utils
Description
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.
Depends on
10 packages- array-0.5.8.0with GHC
- base-4.23.0.0with GHC
- containers-0.8with GHC
- deepseq-1.5.2.0with GHC
- directory-1.3.11.0with GHC
- filepath-1.5.5.0with GHC
- mtl-2.3.2with GHC
- pretty-1.1.3.6with GHC
- string-qq-0.0.6in this set
- time-1.16.0.1with GHC
Used by in this set · 0
Nothing in this set depends on it.