[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: push parser

From: Joel E. Denny
Subject: Re: push parser
Date: Fri, 15 Dec 2006 13:33:08 -0500 (EST)

On Fri, 15 Dec 2006, Paul Eggert wrote:

> >> In theory, it should be 
> >> possible to have any of the following combinations:
> >> 
> >>   impure LALR(1) pull C
> >>   pure   LALR(1) pull C
> >>   impure GLR     pull C
> >>   pure   GLR     pull C
> >>   impure LALR(1) push C
> >>   pure   LALR(1) push C
> >>   impure GLR     push C
> >>   pure   GLR     push C
> >>   (Now repeat the list for C++.)
> In practice, I think nobody cares about impure parsers (i.e., parsers
> with a single global static state) except for the traditional case
> (LALR(1) pull C).  As far as I'm concerned, we can drop support for
> impure parsers, except for that special case.  Will that help simplify
> things?

I agree completely and that's what we're doing now.  I meant the above to 
demonstrate that %push-parser and %pure-parser are logically orthogonal 
concerns so declaring them together should not be an error.  Of course, 
we've decided that all Bison-generated push parsers are pure, so declaring 
them together should be required or redundant (my preference) instead.

> I haven't been following the technical details

Bob and Paul, I can't seem to communicate this adequately in English, so I 
think the best way to explain my view is to write the patch that 
implements it.  It should be very short, but it may be a few hours before 
I can get some time.  Can we pick up the discussion again after that?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]