I haven't checked the syntactic grammar, but our lexical(-ish) grammars seem to freely mix left- and right-recursion, sometimes in the same section.
Left-recursive
Right-recursive
This is fine in a strict sense, but seems to add unnecessary friction—for comprehension, and likely also for implementation. I'd like to take a stance and ideally enforce it programatically, first for the above and then possibly also for syntactic grammars (keeping in mind potential interaction with [empty] and also production-ordering disambiguation, at least until the latter is resolved by e.g. #1727 and #2445).
That said, I'd like to know if spec consumers have reason to prefer one convention over the other.
I haven't checked the syntactic grammar, but our lexical(-ish) grammars seem to freely mix left- and right-recursion, sometimes in the same section.
Left-recursive
Right-recursive
This is fine in a strict sense, but seems to add unnecessary friction—for comprehension, and likely also for implementation. I'd like to take a stance and ideally enforce it programatically, first for the above and then possibly also for syntactic grammars (keeping in mind potential interaction with [empty] and also production-ordering disambiguation, at least until the latter is resolved by e.g. #1727 and #2445).
That said, I'd like to know if spec consumers have reason to prefer one convention over the other.