New Draft of ECMAScript 4 Edition Grammar Released
Adobe's Jeff Dyer has released a new draft of the ECMAScript 4th Edition normative grammar. The updated draft is available in both PDF and XLS formats. Here are the relevant links:
For those keeping track, here are the changes from the last update (as listed on the normative grammar proposal page on ecmascript.org):
- Rename ListExpression to CommaExpression;
- Make CommaExpression a binary expression in the AST;
- Change ParenExpression to ParenListExpression in SuperExpression;
- Rename ParenListExpression to ParenExpression;
- Remove Path qualified PropertyNames;
- Mark reserved/deferred features with ‘x’;
- Remove ‘wrap’;
- Remove ‘like’ as a type;
- Add ‘like’ as a binary type operator;
- Remove LetStatement;
- Remove UnitDefinition;
- Fold NullableTypeExpression into TypeExpression;
- Remove OverloadedOperator from QualifiedNameIdentifier;
- Add distinguishing syntax for tuples and array types in ArrayType;
- Add SplatExpression to arguments and array literals;
- Add RestPattern to array patterns;
- Add to ReservedIdentifiers ‘type’;
- Add to ContextuallyReservedIdentifiers ‘external’;
- Removed from ContextuallyReservedIdentifiers ‘decimal’, ‘double’, ‘generic’, ‘int’, ‘Number’, ‘precision’, ‘rounding’, ‘standard’, ‘to’, ‘uint’, ‘unit’;
- Add LikedPattern to Parameter;
- Add ‘like’ predicate to ResultType;
- Remove ParameterKind and use in Parameter