|Compiler Tool with Error Recovery firstname.lastname@example.org (Julian Mensch) (2009-02-12)|
|Re: Compiler Tool with Error Recovery email@example.com (2009-02-14)|
|Re: Compiler Tool with Error Recovery firstname.lastname@example.org (Vladimir Makarov) (2009-02-17)|
|Re: Compiler Tool with Error Recovery email@example.com (Johannes) (2009-02-19)|
|Re: Compiler Tool with Error Recovery firstname.lastname@example.org (Julian Mensch) (2009-02-21)|
|Re: Compiler Tool with Error Recovery email@example.com (Bill Cox) (2009-02-25)|
|From:||Julian Mensch <firstname.lastname@example.org>|
|Date:||Thu, 12 Feb 2009 12:14:14 -0800 (PST)|
|Keywords:||tools, errors, question|
|Posted-Date:||14 Feb 2009 05:06:19 EST|
I am hoping someone here can point me in the right direction
on a compiler tool. I have an existing script language defined in
a hacked version of ACCENT, but I am beginning to feel my
needs exceed what ACCENT can provide and am thus considering
porting my grammar to a different compiler tool. A primary
difficulty here is error recovery, which ACCENT doesn't do at
My requirements are:
* parse ambigious grammar like ACCENT and Elkhound, using
either GLR, Earley or something similar.
* Generate C++ code, or C code that can be hacked into C++
with macros, modifying the skeleton, etc. Does not need to
generate a parser _class_; procedural code that is legal C++
* Good support for error recovery
* Works with the FLEX lexical analyzer
* Free or reasonably inexpensive
* Does not put license restrictions on the generated parser code
* Ideally, provides for definable context objects the way ACCENT
* Ideally, has a nice, readable source syntax like BNF for the
sake of code maintenance, and to make porting from ACCENT
* Not too steep learning curve, since I need to get the grammar
ported in a weekend or two if it's going to be worthwhile.
* Tested and in use tool on projects other than mine, because I
don't want to port and be stopped by crippling parser bugs I
don't have the skill to fix.
I'd love to hear any suggestions for parsers that meet these
criteria -- something like Elkhound, except with error recovery,
would be great.
Return to the
Search the comp.compilers archives again.