Inline Breakdown of propsed changes to Annex A

# Joseph Spencer (13 years ago)

I've removed Infinity, Undefined, and NaN, which still leaves much of what I wrote to be reviewed further.

Below is a breakdown of the changed portions.

I shortened areas that didn't change to '...'.

A.1 Lexical Grammar

...

Literal:: NonReferableLiteral ReferableLiteral

NonReferableLiteral:: NullLiteral NumericLiteral

ReferableLiteral:: BooleanLiteral StringLiteral

...

A.3 Expressions

PrimaryExpression : See 11.1 ReferablePrimaryExpression NonReferablePrimaryExpression

NonReferablePrimaryExpression: NonReferableLiteral

ReferablePrimaryExpression: this Identifier ReferableLiteral ArrayLiteral ObjectLiteral FunctionExpression ParenthesizedExpression

ParenthesizedExpression: ( Expression )

...

MemberExpression : See 11.2 ReferablePrimaryExpression RefinementExpression

RefinementExpression: RefinementExpression opt [ Expression ] RefinementExpression opt . IdentifierName

Instantiable: FunctionExpression CallExpression Callable

New: new New new

NewExpression : See 11.2 New Instantiable

Callable: Identifier MemberExpression ParenthesizedExpression

CallExpression : See 11.2 Callable Call

Call: Call opt RefinementExpression opt Arguments

...

LeftHandSideExpression : See 11.2 Identifier MemberExpression

PostfixExpression : See 11.3 LeftHandSideExpression [no LineTerminator here] ++ LeftHandSideExpression [no LineTerminator here] --

PrefixExpression: ++ [no LineTerminator here] LeftHandSideExpression -- [no LineTerminator here] LeftHandSideExpression

UnaryExpression : See 11.4 NewExpression CallExpression PrimaryExpression LeftHandSideExpression PostfixExpression PrefixExpression delete UnaryExpression void UnaryExpression typeof UnaryExpression

  • UnaryExpression
  • UnaryExpression ~ UnaryExpression ! UnaryExpression

...

# Joseph Spencer (13 years ago)

On Sat, 2012-09-08 at 08:39 -0700, Joseph Spencer wrote:

MemberExpression : See 11.2 ReferablePrimaryExpression RefinementExpression

Sorry, I should have typed this instead to allow for call().a=5:

MemberExpression : See 11.2 ReferablePrimaryExpression RefinementExpression CallExpression RefinementExpression