3.4 KiB
3.4 KiB
C# Language Design Notes for 2014
Overview of meetings and agendas for 2014
Jan 6, 2014
C# Language Design Notes for Jan 6, 2014
- Syntactic ambiguities with declaration expressions <a solution adopted>
- Scopes for declaration expressions <more refinement added to rules>
Feb 3, 2014
C# Language Design Notes for Feb 3, 2014
- Capture of primary constructor parameters <only when explicitly asked for with new syntax>
- Grammar around indexed names <details settled>
- Null-propagating operator details <allow indexing, bail with unconstrained generics>
Feb 10, 2014
C# Language Design Notes for Feb 10, 2014
- Design of using static <design adopted>
- Initializers in structs <allow in certain situations>
- Null-propagation and unconstrained generics <keep current design>
Apr 21, 2014
C# Language Design Notes for Apr 21, 2014
- Indexed members <lukewarm response, feature withdrawn>
- Initializer scope <new scope solves all kinds of problems with initialization>
- Primary constructor bodies <added syntax for a primary constructor body>
- Assignment to getter-only auto-properties from constructors <added>
- Separate accessibility for type and primary constructor <not worthy of new syntax>
- Separate doc comments for field parameters and fields <not worthy of new syntax>
- Left associative vs short circuiting null propagation <short circuiting>
May 7, 2014
C# Language Design Notes for May 7, 2014
- protected and internal <feature cut – not worth the confusion>
- Field parameters in primary constructors <feature cut – we want to keep the design space open>
- Property declarations in primary constructors <interesting but not now>
- Typeswitch <Not now – more likely as part of a future more general matching feature>
May 21, 2014
C# Language Design Notes for May 21, 2014
- Limit the nameof feature? <keep current design>
- Extend params IEnumerable? <keep current design>
- String interpolation <design nailed down>
Jul 9, 2014
C# Language Design Notes for Jul 9, 2014
- Detailed design of nameof <details settled>
- Design of #pragma warning extensions <allow identifiers>
Aug 27, 2014
C# Language Design Notes for Aug 27, 2014
- Allowing parameterless constructors in structs <allow, but some unresolved details>
- Definite assignment for imported structs <revert to Dev12 behavior>
Sep 3, 2014
C# Language Design Notes for Sep 3, 2014
- Removing “spill out” from declaration expressions in simple statements <yes, remove>
- Same name declared in subsequent else-if’s <condition decls out of scope in else-branch>
- Add semicolon expressions <not in this version>
- Make variables in declaration expressions readonly <no>
Oct 1, 2014
C# Language Design Notes for Oct 1, 2014
- Assignment to readonly autoprops in constructors (we fleshed out details)
- A new compiler warning to prevent outsiders from implementing your interface? (no, leave this to analyzers)
Oct 15, 2014
C# Language Design Notes for Oct 15, 2014
- nameof operator: spec v5
- String Interpolation for C#