But we could extend the cover grammar with some work. You'd have to push ArrayLiteral and ObjectLiteral down from PrimaryExpression alternative right-hand sides, to live under CoverParenthesizedExpressionAndArrowParameterList.Seems do-able -- anyone see a fatal problem? Could be an ES7 relaxation from ES6, if it matters enough to users.

/be

Rick Waldron wrote:
Inline...

On Thu, Mar 19, 2015 at 4:50 PM Jan-Ivar Bruaroey <[email protected] <mailto:[email protected]>> wrote:

    Hi group! First post, so be gentle.


Welcome


    I love how arrow functions allow single arguments to be passed without
    parenthesis, so I expected this to work:

         Promise.all([true, false]).then([foo, bar] => console.log(foo +”,
    "+ bar));

    but it doesn't:

         SyntaxError: invalid arrow-function arguments (parentheses around
    the arrow-function may help)

    I understand from the spec that this is as defined, but is there a
    technical reason to disallow it?


To prevent ambiguity with:

MemberExpressionArguments
CallExpressionArguments


Arguments[Yield] :
|(| |)|
|(| ArgumentList[?Yield] |)|
ArgumentList[Yield] :
AssignmentExpression[In, ?Yield]
|...| AssignmentExpression[In, ?Yield]
ArgumentList[?Yield] |,| AssignmentExpression[In, ?Yield]
ArgumentList[?Yield] |,| |...| AssignmentExpression[In, ?Yield]


e.g.

  fn([a, b])

Rick


    The parenthesis seem redundant to the naked eye.

    Thanks,

    .: Jan-Ivar :.

    _______________________________________________
    es-discuss mailing list
    [email protected] <mailto:[email protected]>
    https://mail.mozilla.org/listinfo/es-discuss

_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to