Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test #3

Open
RexJaeschke opened this issue Jan 3, 2022 · 0 comments
Open

Test #3

RexJaeschke opened this issue Jan 3, 2022 · 0 comments

Comments

@RexJaeschke
Copy link
Owner

V7 Feature List and Current Status

This file identifies the known V7 features, and tracks their status. Although there were minor "dot" releases of V7, committee ECMA TC49/TG2 plans to combine all 7.x features into one V7 spec.

For the most part, the features were spec'd in version-number order. (One exception was that a feature from 7.2 was combined with two related features from 7.0 in a single PR.) Dependencies between feature specs are noted. The Effort is an attempt to show the size/complexity of the proposal, such as small, *medium", or large, allowing TG2 to pick-and-chose the ones they'll work on next.

Unlike with the V6 work, where we had separate and divergent V5 Ecma and MS specs, for V7, we started with a set of MS proposals, some of which were placeholders for which text was never provided. Where they existed, Rex took these proposals, wrote tests, looked at MS (and other) tutorial pages, and created a brach, and for most features, a corresponding (Draft) PR, with the edits he thought were needed. It is quite possible that not everything in any given MS proposal was in fact implemented in that version, and it is also possible that things implemented in a version later on were not spec'd back into the proposal.

For any given feature, Rex actually wrote his version of the final proposal, in a Word file, but using md syntax. This allowed him to order the sets of edits by clause and subclause, and to exploit Word's comment, tracked-change, color, and other features, in order to make the proposal more readable and consistant. A Table-of-Contents was also added, so the reader can see at a glance the areas of the standard impacted by the proposal. This Word document was eventually turned into the branch edits and corresponding PR. For at least some features, it likely will be useful for TG2 members to have access to these Word files, as they may be helpful in seeing the actual changes made, along with "Notes to TG2" that I made fro consideration come processing time. (These Word documents and their associated test currently reside in a DropBox folder to which Bill Wagner has access, as well as on Rex's machine.)

Version Feature PR Status Effort Notes
7.0 binary integer literals 45 Open Small The following features were combined: binary integer literals, embedded digit separators in numeric literals, leading digit separators in bin/hex integer literals.
7.0 embedded digit separators in numeric literals 45 Open Small The following features were combined: binary integer literals, embedded digit separators in numeric literals, leading digit separators in bin/hex integer literals.
7.0 out variables 44 Open Medium The following features were combined: out variables, Discards, use expression variables in more locations
7.0 Discards 44 Open Medium The following features were combined: out variables, Discards, use expression variables in more locations
7.0 Tuples 63 but needs some work Open Large The following features were combined: Tuples, Inferred tuple element names, test == and != with tuple types.
7.0 Pattern Matching 61 Open Large The following features were combined: Pattern Matching, Pattern matching on generic type parameters, use expression variables in more locations.
7.0 ref locals and returns 213 Open Combination #4
7.0 Local Functions 104 Open Small
7.0 More expression-bodied members 69 Open Small
7.0 throw Expressions 65 but needs some work Open
7.0 Generalized async return types In progress Open
7.1 async Main method 70 Open
7.1 default literal expressions 236 Open
7.1 Inferred tuple element names - see MS Proposal 63 but needs some work Open Large The following features were combined: Tuples, Inferred tuple element names, test == and != with tuple types.
7.1 Pattern matching on generic type parameters 61 Open Large The following features were combined: Pattern Matching, Pattern matching on generic type parameters, use expression variables in more locations.
7.2 leading digit separators in bin/hex integer literals 45 Open Small The following features were combined: binary integer literals, embedded digit separators in numeric literals, leading digit separators in bin/hex integer literals.
7.2 Non-trailing named arguments 216 Open
7.2 private protected access modifier 215 Open
7.2 Conditional ref expressions 213 Open Combination #4
7.2 in parameter modifier 219 Open Combination #5
7.2 ref with this in extension methods 219 Open Combination #5
7.2 readonly and ref structs In progress Open
7.3 indexing movable fixed buffer without pinning 239 Open
7.3 reassign ref local variables 213 Open Combination #4
7.3 use initializers on stackalloc arrays 238 Open
7.3 Support for Pattern-Based fixed Statements 240 Open
7.3 use additional generic constraints 244 Open
7.3 test == and != with tuple types 63 but needs some work Open Large The following features were combined: Tuples, Inferred tuple element names, test == and != with tuple types.
7.3 use expression variables in more locations 44, 61 Open Medium The following features were combined: out variables, Discards, use expression variables in more locations. Large
7.3 attach attributes to the backing field of auto-implemented properties 262 Open
7.3 overload resolution now has fewer ambiguous cases 263 Open
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant