LR(1) grammar/parser and lookahead-restrictions
jmdyck at ibiblio.org
Wed Jan 11 18:28:33 UTC 2017
In the past, it has been said (usually by Brendan Eich) that TC39 intends
that the ECMAScript grammar be LR(1). Is that still the case? (I'm not so
much asking about the "1", but more about the "LR".)
If so, I'm wondering how lookahead-restrictions (e.g., [lookahead <!
terminals]) fit into the LR approach. It seems like there are three
- modify the grammar (before the parser is constructed),
- modify the construction of the parser, and/or
- modify the operation of the parser.
It's not clear to me that any of these (or any combination of these) will work.
Has anyone algorithmically generated an LR parser from the spec grammar? If
so, how did you you handle lookahead-restrictions?
More information about the es-discuss