Package2.9.5Parsing
BNFC
A compiler front-end generator.
- Version2.9.5
- CategoryParsing
- LicenceBSD-3-Clause
- Maintainerbnfc-dev@googlegroups.com
- Homepagebnfc.digitalgrammars.com
- Pinned byhackage BNFC 2.9.5
- Sourcehackage.haskell.org/package/BNFC-2.9.5
Modules
81 modules- BNFC.Abs16The abstract syntax of language BNFC.
- BNFC.Backend.Agda1Agda backend. Generate bindings to Haskell data types for use in Agda. Example for abstract syntax generated in Haskell backend: module C…
- BNFC.Backend.Base8Backend base module. Defines the type of the backend and some useful functions.
- BNFC.Backend.C5
- BNFC.Backend.C.CFtoBisonC7
- BNFC.Backend.C.CFtoCAbs1
- BNFC.Backend.C.CFtoCPrinter1
- BNFC.Backend.C.CFtoCSkel1
- BNFC.Backend.C.CFtoFlexC13
- BNFC.Backend.C.Common1Common definitions for the modules of the C backend.
- BNFC.Backend.C.RegToFlex1
- BNFC.Backend.CPP.Common2Common to the C++ backends.
- BNFC.Backend.CPP.Makefile1
- BNFC.Backend.CPP.Naming5
- BNFC.Backend.CPP.NoSTL1
- BNFC.Backend.CPP.NoSTL.CFtoCPPAbs1
- BNFC.Backend.CPP.PrettyPrinter2
- BNFC.Backend.CPP.STL1
- BNFC.Backend.CPP.STL.CFtoCVisitSkelSTL1
- BNFC.Backend.CPP.STL.CFtoSTLAbs1
- BNFC.Backend.CPP.STL.STLUtils5
- BNFC.Backend.Common4Functions common to different backends.
- BNFC.Backend.Common.Makefile4
- BNFC.Backend.Common.NamedVariables12
- BNFC.Backend.Common.OOAbstract8
- BNFC.Backend.Common.StrUtils2
- BNFC.Backend.Haskell4
- BNFC.Backend.Haskell.CFtoAbstract4
- BNFC.Backend.Haskell.CFtoAlex31
- BNFC.Backend.Haskell.CFtoHappy2
- BNFC.Backend.Haskell.CFtoLayout3
- BNFC.Backend.Haskell.CFtoPrinter2
- BNFC.Backend.Haskell.CFtoTemplate1
- BNFC.Backend.Haskell.HsOpts39
- BNFC.Backend.Haskell.MkErrM1
- BNFC.Backend.Haskell.Utils22
- BNFC.Backend.HaskellGADT1
- BNFC.Backend.HaskellGADT.CFtoAbstractGADT1
- BNFC.Backend.HaskellGADT.CFtoTemplateGADT1
- BNFC.Backend.HaskellGADT.HaskellGADTCommon3
- BNFC.Backend.Java1Top-level for the Java back end. $Id: JavaTop15.hs,v 1.12 2007/01/08 18:20:23 aarne Exp $
- BNFC.Backend.Java.CFtoAbstractVisitor1
- BNFC.Backend.Java.CFtoAllVisitor1
- BNFC.Backend.Java.CFtoAntlr4Lexer1
- BNFC.Backend.Java.CFtoAntlr4Parser1
- BNFC.Backend.Java.CFtoComposVisitor1
- BNFC.Backend.Java.CFtoCup151
- BNFC.Backend.Java.CFtoFoldVisitor1
- BNFC.Backend.Java.CFtoJLex151
- BNFC.Backend.Java.CFtoJavaAbs153
- BNFC.Backend.Java.CFtoJavaPrinter151
- BNFC.Backend.Java.CFtoVisitSkel151
- BNFC.Backend.Java.RegToAntlrLexer2
- BNFC.Backend.Java.RegToJLex2
- BNFC.Backend.Java.Utils5
- BNFC.Backend.Latex33
- BNFC.Backend.OCaml1
- BNFC.Backend.OCaml.CFtoOCamlAbs1
- BNFC.Backend.OCaml.CFtoOCamlLex1
- BNFC.Backend.OCaml.CFtoOCamlPrinter2
- BNFC.Backend.OCaml.CFtoOCamlShow2
- BNFC.Backend.OCaml.CFtoOCamlTemplate1
- BNFC.Backend.OCaml.CFtoOCamlTest2
- BNFC.Backend.OCaml.CFtoOCamlYacc3
- BNFC.Backend.OCaml.OCamlUtil12
- BNFC.Backend.Pygments5
- BNFC.Backend.Txt2Tag2
- BNFC.Backend.XML40
- BNFC.CF122
- BNFC.Check.EmptyTypes1Check whether generated AST will have empty types. Internal rules are included. We compute by a saturation algorithm which token types ar…
- BNFC.GetCF3Check LBNF input file and turn it into the CF internal representation.
- BNFC.Lex50
- BNFC.Lexing4
- BNFC.License1
- BNFC.Options21
- BNFC.Par26
- BNFC.PrettyPrint59Extends 'Text.PrettyPrint'.
- BNFC.Print12Pretty-printer for BNFC.
- BNFC.Regex2Tools to manipulate regular expressions.
- BNFC.TypeChecker8Type checker for defined syntax constructors define f xs = e.
- BNFC.Utils44
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
12 packages- array-0.5.8.0with GHC
- base-4.20.2.0with GHC
- containers-0.7with GHC
- deepseq-1.5.0.0with GHC
- directory-1.3.8.5with GHC
- filepath-1.5.4.0with GHC
- mtl-2.3.1with GHC
- pretty-1.1.3.6with GHC
- process-1.6.26.1with GHC
- string-qq-0.0.6in this set
- time-1.12.2with GHC
- transformers-0.6.1.1with GHC
Used by in this set · 0
Nothing in this set depends on it.