Nannying (was: Array comprehension syntax)
allen at wirfs-brock.com
Tue Sep 25 15:27:06 PDT 2012
On Sep 25, 2012, at 1:27 PM, Brendan Eich wrote:
> Allen Wirfs-Brock wrote:
>> I note that in your toy grammar you avoid the comma issue at the front and in the for clauses by using AssignmentExpression in those positions.
>> The current ES6 spec. draft has AssignmentExpression at the front, and Expression in the for and if clauses. However, there is also a editor's note that suggests that AssignmentExpression should be considered for all three positions.
> There's still no ambiguity if the toy grammar changes to
agreed, this isn't about formal parsing ambiguity.
> The "readability" concern would matter if people actually wrote unparenthesized comma expressions in such comprehensions, but Nanny-me says they won't, and Mary Poppins agrees.
> Again, it's not our job to prevent people from writing something that might confuse someone. JS has lots of room in its grammar for that. I agree with Dave, in absence of evidence of real ambiguity or another technical grammar problem.
So, from that perspective, why didn't you make it:
'[' AssExpList ']'
| '[' Exp FOR ID OF Exp IF Exp ']'
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the es-discuss