|reduce actions vs shift actions email@example.com (Richard A Nelson) (2006-12-29)|
|From:||Richard A Nelson <firstname.lastname@example.org>|
|Date:||29 Dec 2006 22:58:45 -0500|
|Organization:||Posted via Supernews, http://www.supernews.com|
|Keywords:||parse, tools, question|
|Posted-Date:||29 Dec 2006 22:58:45 EST|
I'm looking towards replacing an extant parser system with something
more formal - to hopefully detect parsing issues are parser build time,
rather than trying to debug misparsed code.
The current tool is similar to a NFA, with lots of embedded actions.
>From the size, and scope of the grammar, I am very confident that
converting the grammar to LALR would be a disaster, many reduce-reduce
conflicts created by the embedded actions (due to the hidden reductions
generated by tools like YACC).
I've seen references to parser generators that can properly support
shift actions - I guess by special encoding of the action array... but
I've not yet found any description of rational techniques to handle
this, or describe the effects (increased table size due to less sharing) ?
The next problem, should I overcome this limitation, will be the bizarre
lookahead used by the tool - but I'm hoping that converting the input to
something YACC(or workalike) will eat will start showing me what kind of
tweaks I'll be needing for the grammar (and actions).
Return to the
Search the comp.compilers archives again.