On 13-04-25 09:23 AM, Felix S. Klock II wrote:
Are we allowing for the possibility of choosing the semi-middle ground of: "There *exists* an LL(1) grammar for Rust that is derivable from the non-LL(1)-but-official grammar for Rust." ? Or do we want to go all the way to ensuring that our own grammar that we e.g. use for defining the syntactic classes of the macro system etc is strictly LL(1) (or perhaps LL(k) for some small but known fixed k)?
We are (or at least, I am) allowing for this (and related) possibilities. This is an aspirational conversation. I can't rule out anything really; if we found that there were grammar bits that were essential to our expressiveness and put us in "nothing short of GLR", that would be ... sad, but not ship-sinking. Until this week I had no idea where we were, grammar-wise; it might have required a turing complete recognizer for all I knew. Hand written parsers often contain gruesome hacks. Ours certainly has in the past!
I'm just trying to find out how good we can get things (without major surgery). LL(1) is icing on the cake. But who doesn't like icing on their cake?
-Graydon _______________________________________________ Rust-dev mailing list [email protected] https://mail.mozilla.org/listinfo/rust-dev
