Enhancement requiest

slipbits <[email protected]> Tue, 7 Jun 2022 13:06:30 -0700
Newsgroups gmane.comp.parsers.bison.general
Message-ID <[email protected]>
In 3.3.3 Recursive Rules you say:

"...you should always use left recursion, because it can parse a 
sequence of any number of elements with bounded stack space. Right 
recursion uses up space on the Bison stack in proportion to the number 
of elements in the sequence ..."

In ANTLR (an LL(1) parser) I believe that the issue of putting lists in 
the wrong order is resolved. I wonder if that is a good thing to 
consider for Bison.

As just a comment, rather that go into the details of stack size 
wouldn't it be better to point out that in LR(1) grammars, BNF with 
LL(1) list definitions cause problems and should not be used. I guess I 
'm confused as to the knowledge of the assumed audience for this 
document and whether they know about LR(1) and LL(1) grammars. You did 
mentions LALR(1) grammars in 1.1 Languages and Context-Free Grammar and 
IELR(1) and LR(1), but not SLR(1) (an immediate precursor to LALR(1), so 
I assume that the target audience has some knowledge about LR(1) and 
LL(1) lists.

I'm not done with the document, but so far I've seen no reference to 
EBNF, a.k.a., ambiguous grammars, but I do see their use. I hope this 
will be mentioned.

These comments are incidental to my reading of the document. If you like 
I can continue in a more methodical way and if you's like, can 
contribute alternate wording/text for your review. The current document 
is much, much better than the one I looked at in 2013 or thereabout. You 
are doing a great job.

thanks
art