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:
- Normative Grammar Proposal on the ECMAScript Wiki site, with links to both PDF and XLS versions
- Direct link to the PDF version of the normative grammar
- Direct link to the XLS version of the normative grammar
- Jeff's announcment to the ES4-Discuss mailing list about the updated grammar
- 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