bnfc
bnfc copied to clipboard
BNF Converter
[ WIP #302 ] isUsedCat distinguishes between Internal and Parsable Haskell: prevent internal user token types to become part of the lexer. TODO: exclude them also from being mentioned in...
This pull request allows bnfc to create cabal files in order to build/install the generated modules. (I will start working on a cabal hook, which lets you use bnfc as...
This is a backend for Javascript using Jison (https://zaach.github.io/jison/docs/). It's almost complete although there are some issues I have been unable to resolve: 1. I have not gotten the tests...
The C backend generates code for several entrypoints, but `bison` allows only one `start` symbol. Currently, the generated code for the other entrypoints is superfluous and maybe confusing. Maybe several...
Haskell: if no `entrypoints` are given, everything is an entry point. Maybe we should have a special `entrypoints *` for that purpose, and otherwise default to the first category (like...
The Haskell backend does not generate parsers for the token categories. These should be also listed as entrypoints, there is no good reason why not.
Add `printable` to represent all printable unicode chars
E.g. this should fail BNFC's well-formedness check. ``` separator nonempty Integer "," ; terminator Integer "" ; ```
Declarations like ``` terminator Stm ""; separator Fun ""; ``` do not offer any information besides that `[Stm]` and `[Fun]` should be supported as list categories. These declaration could be...
Add support in cabal to build bnf files using bnfc (like what is done with alex and happy). This would, among other things, make bnfc own compilation easier.