csharplang/meetings/2014/README.md

101 lines
3.4 KiB
Markdown
Raw Normal View History

# C# Language Design Notes for 2014
Overview of meetings and agendas for 2014
## Jan 6, 2014
[C# Language Design Notes for Jan 6, 2014](LDM-2014-01-06.md)
1. Syntactic ambiguities with declaration expressions <_a solution adopted_>
2. Scopes for declaration expressions <_more refinement added to rules_>
## Feb 3, 2014
[C# Language Design Notes for Feb 3, 2014](LDM-2014-02-03.md)
1. Capture of primary constructor parameters <_only when explicitly asked for with new syntax_>
2. Grammar around indexed names <_details settled_>
3. Null-propagating operator details <_allow indexing, bail with unconstrained generics_>
## Feb 10, 2014
[C# Language Design Notes for Feb 10, 2014](LDM-2014-02-10.md)
1. Design of using static <_design adopted_>
2. Initializers in structs <_allow in certain situations_>
3. Null-propagation and unconstrained generics <_keep current design_>
## Apr 21, 2014
[C# Language Design Notes for Apr 21, 2014](LDM-2014-04-21.md)
1. Indexed members <_lukewarm response, feature withdrawn_>
2. Initializer scope <_new scope solves all kinds of problems with initialization_>
3. Primary constructor bodies <_added syntax for a primary constructor body_>
4. Assignment to getter-only auto-properties from constructors <_added_>
5. Separate accessibility for type and primary constructor <_not worthy of new syntax_>
6. Separate doc comments for field parameters and fields <_not worthy of new syntax_>
7. Left associative vs short circuiting null propagation <_short circuiting_>
## May 7, 2014
[C# Language Design Notes for May 7, 2014](LDM-2014-05-07.md)
1. protected and internal <_feature cut not worth the confusion_>
2. Field parameters in primary constructors <_feature cut we want to keep the design space open_>
3. Property declarations in primary constructors <_interesting but not now_>
4. 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](LDM-2014-05-21.md)
1. Limit the nameof feature? <_keep current design_>
2. Extend params IEnumerable? <_keep current design_>
3. String interpolation <_design nailed down_>
## Jul 9, 2014
[C# Language Design Notes for Jul 9, 2014](LDM-2014-07-09.md)
1. Detailed design of nameof <_details settled_>
2. Design of #pragma warning extensions <_allow identifiers_>
## Aug 27, 2014
[C# Language Design Notes for Aug 27, 2014](LDM-2014-08-27.md)
1. Allowing parameterless constructors in structs <_allow, but some unresolved details_>
2. Definite assignment for imported structs <_revert to Dev12 behavior_>
## Sep 3, 2014
[C# Language Design Notes for Sep 3, 2014](LDM-2014-09-03.md)
1. Removing “spill out” from declaration expressions in simple statements <_yes, remove_>
2. Same name declared in subsequent else-ifs <_condition decls out of scope in else-branch_>
3. Add semicolon expressions <_not in this version_>
4. Make variables in declaration expressions readonly <_no_>
## Oct 1, 2014
[C# Language Design Notes for Oct 1, 2014](LDM-2014-10-01.md)
1. Assignment to readonly autoprops in constructors (we fleshed out details)
2. 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](LDM-2014-10-15.md)
1. nameof operator: spec v5
2. [String Interpolation for C#](http://1drv.ms/1tFUvbq)