BNFC3: A compiler front-end generator.
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
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 directory, a case skeleton for the abstract syntax in the same language, an Alex, JLex, or Flex lexer generator file, a Happy, CUP, Bison, or Antlr 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.
[Skip to Readme]
Properties
Versions | 3.0 |
---|---|
Change log | CHANGELOG.md |
Dependencies | array (>=0.5 && <0.6), base (>=4.9 && <5), BNFC3, containers (>=0.6.0.1 && <0.7), deepseq (>=1.4.2.0 && <1.5), directory (>=1.3 && <1.4), extra (>=1.7.9 && <1.8), filepath (>=1.4 && <1.5), microlens (>=0.4.12 && <0.5), microlens-mtl (>=0.2.0.1 && <0.3), microlens-th (>=0.4.3.9 && <0.5), monad-control (>=1.0.2.3 && <1.1), mtl (>=2.2.2 && <2.3), optparse-applicative (>=0.16 && <0.17), pretty-show, prettyprinter (>=1.7.0 && <1.8), prettyprinter-ansi-terminal (>=1.1.2 && <1.2), split (>=0.2.3.4 && <0.3), string-qq (>=0.0.4 && <0.1), transformers (>=0.5.2) [details] |
License | BSD-3-Clause |
Author | Andreas Abel and Beatrice Vergani |
Maintainer | bnfc-dev@googlegroups.com |
Category | Parsing |
Home page | https://bnfc.digitalgrammars.com |
Bug tracker | https://github.com/BNFC/bnfc3/issues |
Source repo | head: git clone git://github.com/andreasabel/bnfc3.git |
Uploaded | by AndreasAbel at 2022-07-22T09:02:45Z |
Modules
[Index] [Quick Jump]
- BNFC
- BNFC.Abs
- Backend
- BNFC.Backend.Agda
- BNFC.Backend.Agda.AbstractSyntax
- BNFC.Backend.Agda.IOLib
- BNFC.Backend.Agda.InitState
- BNFC.Backend.Agda.Lexer
- BNFC.Backend.Agda.Main
- BNFC.Backend.Agda.Makefile
- BNFC.Backend.Agda.Options
- BNFC.Backend.Agda.Parser
- BNFC.Backend.Agda.Printer
- BNFC.Backend.Agda.State
- BNFC.Backend.Agda.Template
- BNFC.Backend.Agda.Test
- Utilities
- BNFC.Backend.C
- BNFC.Backend.CPP
- Common
- CommonInterface
- BNFC.Backend.Haskell
- BNFC.Backend.Haskell.AbstractSyntax
- GADT
- BNFC.Backend.Haskell.InitState
- BNFC.Backend.Haskell.Layout
- BNFC.Backend.Haskell.Lexer
- BNFC.Backend.Haskell.Makefile
- BNFC.Backend.Haskell.Options
- BNFC.Backend.Haskell.Parser
- BNFC.Backend.Haskell.Printer
- BNFC.Backend.Haskell.State
- BNFC.Backend.Haskell.Template
- BNFC.Backend.Haskell.Test
- Utilities
- BNFC.Backend.Java
- BNFC.Backend.Latex
- BNFC.Backend.OCaml
- BNFC.Backend.Txt2Tags
- BNFC.Backend.Agda
- BNFC.CF
- Check
- BNFC.Lex
- BNFC.Lexing
- BNFC.License
- BNFC.Main
- BNFC.Options
- BNFC.Par
- BNFC.Prelude
- BNFC.Print
- Types
- Utils
- Paths_BNFC3
Downloads
- BNFC3-3.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees