Andreas Abel
Andreas Abel
The Haskell/GADT backend was implemented as a completely separate backend (likely starting with a clone of the Haskell backend). This was before my time as BNFC maintainer, and I do...
> For finding out the delimiters from the LBNF grammar, we need to implement a FOLLOW analysis. Possibly reuse the analysis functionality of https://github.com/nedervold/context-free-grammar, as this package is maintained again...
Well, it is standard that a lexer (or regular expression matcher) takes the _longest match_, so `"a b"` will always match `AB`. This usually intended, so if you have ```...
Ok, I see, Askar, you want what is often called a _round-trip_ property giving you correctness of your parser and printer. I think you cannot get this property in the...
Thanks for the pointers. Other works that you could look at verified parsing: - A Verified LL(1) Parser Generator, https://dblp.org/rec/conf/itp/LasserCFR19 - TRX: A Formally Verified Parser Interpreter, https://arxiv.org/abs/1105.2576 > ```haskell...
I think CLI programs would benefit from a standard that allows to pass configuration in from different sources: 1. Global configuration file. 2. Local default configuration file. 3. Command line...
I am not proficient enough in C++ to attempt an implementation, but PRs are welcome!
BNFC does not use a lot of tools; it simply prints concrete syntax, maybe with the help of the `Text.Pretty` pretty printing library.
> Makefiles for C++ backend have `--ansi` flag and C++98 does not support `shared_ptr`/`unique_ptr`. Is it safe to switch to C++11? Well, if there is an option > to parse...
> I would like to do this issue if I have time... Great! A first step could be to write up an example how the product should look like (e.g....