csharplang/meetings/2019/README.md

193 lines
5.7 KiB
Markdown
Raw Normal View History

# Upcoming meetings for 2019
2019-01-11 22:36:19 +01:00
## Schedule ASAP
## Schedule when convenient
2019-03-26 00:50:16 +01:00
- Nullable Reference Types: Open LDM Issues https://github.com/dotnet/csharplang/issues/2201
2019-03-26 00:51:14 +01:00
- Default Implementation Members: Open LDM Issues https://github.com/dotnet/csharplang/issues/406
2019-03-21 22:05:31 +01:00
- Allowing pattern-based `foreach` and `await foreach` to bind to an extension `GetEnumerator`/`GetAsyncEnumerator` and `MoveNext`/`MoveNextAsync` (Julien/Chris)
- Syntax of positional records/primary constructors (Andy)
2019-03-26 00:50:16 +01:00
- Discussion of refreshing language spec (Neal)
2019-01-11 22:36:19 +01:00
2019-01-11 23:37:04 +01:00
## Recurring topics
- *Triage championed features*
- *Triage milestones*
- *Design review*
2019-03-15 21:58:47 +01:00
## Apr 17, 2019
## Apr 15, 2019
## Apr 3, 2019
2019-04-01 18:24:20 +02:00
### Nullable Reference Types
- Ambiguous implements/overrides with generic methods and NRTs
See https://github.com/dotnet/csharplang/issues/2378.
There is a breaking change in VS2019 to address, as well as a C# 8 language question
- What is the nullability of a dynamic value? Oblivious?
See also https://github.com/dotnet/roslyn/issues/29893
- When we compute an annotation in the walker (e.g. type inference), do we use the context?
See also https://github.com/dotnet/roslyn/issues/33639
- Inferred nullable state from a finally block
See also https://github.com/dotnet/roslyn/issues/34018
2019-03-15 21:58:47 +01:00
### Coalescing Assignment
- `??=` with `Nullable<T>` LHS and `T` (underlying VT) RHS (Fred)
See also https://github.com/dotnet/csharplang/issues/34#issuecomment-444699550 and discussion following
## Apr 1, 2019
### Index/Range Feature
- Pattern-based index/range translation (Jared, Stephen)
#### Default Interface Methods
- Is `object.MemberwiseClone()` accessible in an interface?
Please revisit this question.
## Mar 27, 2019
#### Default Interface Methods
See also https://github.com/dotnet/csharplang/issues/406
We now have a proposed runtime implementation for reabstraction. See https://github.com/dotnet/coreclr/pull/23313
- Reabstraction
- explicit interface abstract overrides in classes
- Is `object.MemberwiseClone()` accessible in an interface?
- Confirm: `static int P { get; set; }` is an auto-property with a compiler-generated backing field?
- Confirm: `partial` on a method declaration implies `private`, and no access modifier is permitted?
2019-02-26 22:28:26 +01:00
## Mar 13, 2019
2019-03-12 01:42:36 +01:00
#### Default Interface Methods
See also https://github.com/dotnet/csharplang/issues/406
- Reabstraction (open)
- explicit interface abstract overrides in classes (open)
#### Pattern-Matching
See also https://github.com/dotnet/csharplang/issues/2095
- Propose to change precedence of switch expression to primary (open)
The switch expression is currently at *relational* precedence. I propose to change it to *primary* precedence. See [#2331](https://github.com/dotnet/csharplang/issues/2331) for details.
- Reserve `and` and `or` in patterns (open)
In anticipation of possibly permitting `and` and `or` as pattern combinators in the future, we should forbid (or at least warn) when these identifiers are used as the designator in a declaration or recursive pattern. Otherwise it would be a breaking change.
- To where do null inferences flow from a pattern in a `switch`? (open)
1. To the entry of the switch and all previous cases
2. To that branch of the switch only
3. To all code that follows the test in logical order
2019-02-19 19:39:26 +01:00
## Mar 6, 2019
2019-03-08 23:36:48 +01:00
- ~~Nullable sidecar files (Immo)~~
2019-02-27 02:08:50 +01:00
- Nullable Reference Types: Open LDM Issues https://github.com/dotnet/csharplang/issues/2201
2019-02-26 22:28:26 +01:00
2019-02-28 23:05:14 +01:00
# C# Language Design Notes for 2019
Overview of meetings and agendas for 2019
2019-04-01 23:29:43 +02:00
## Mar 25, 2019
[C# Design Review Notes for Mar 25, 2019](LDM-2019-03-25.md)
We brought in the design review team to look at some of our recent and open decisions in C# LDM.
1. Nullable reference types: shipping annotations
2. Pattern-based indexing with `Index` and `Range`
3. Cancellation tokens in async streams
2019-03-05 04:41:47 +01:00
## Mar 4, 2019
[C# Language Design Notes for March 4, 2019](LDM-2019-03-04.md)
1. Nullable user studies
2. Interpolated string and string.Format optimizations
2019-03-11 08:56:43 +01:00
## Feb 27, 2019
[C# Language Design Notes for Feb 27, 2019](LDM-2019-02-27.md)
1. Allow ObsoleteAttribute on property accessors
2. More Default Interface Member questions
2019-02-19 19:39:26 +01:00
## Feb 25, 2019
2019-03-11 08:56:43 +01:00
[C# Language Design Notes for Feb 25, 2019](LDM-2019-02-25.md)
2019-02-28 23:05:14 +01:00
2019-02-19 19:39:26 +01:00
- Open issues in default interface methods (https://github.com/dotnet/csharplang/issues/406).
- Base calls
- We currently have open issues around `protected`, `internal`, reabstraction, and `static` fields among others.
2019-02-22 23:35:54 +01:00
## Feb 20, 2019
[C# Language Design Notes for Feb 20, 2019](LDM-2019-02-20.md)
- Nullable Reference Types: Open LDM Issues https://github.com/dotnet/csharplang/issues/2201
2019-02-23 00:03:04 +01:00
## Feb 13, 2019
[C# Language Design Notes for Feb 13, 2019](LDM-2019-02-13.md)
- Nullable Reference Types: Open LDM Issues https://github.com/dotnet/csharplang/issues/2201
2019-01-28 04:57:04 +01:00
## Jan 23, 2019
[C# Language Design Notes for Jan 23, 2019](LDM-2019-01-23.md)
Function pointers ([Updated proposal](https://github.com/dotnet/csharplang/blob/master/proposals/function-pointers.md))
2019-01-18 00:55:44 +01:00
## Jan 16, 2019
[C# Language Design Notes for Jan 16, 2019](LDM-2019-01-16.md)
1. Shadowing in lambdas
2. Pattern-based disposal in `await foreach`
2019-01-16 01:02:39 +01:00
## Jan 14, 2019
[C# Language Design Notes for Jan 14, 2019](LDM-2019-01-14.md)
- Generating null-check for `parameter!`
https://github.com/dotnet/csharplang/pull/2144
2019-01-10 20:26:27 +01:00
## Jan 9, 2019
[C# Language Design Notes for Jan 9, 2019](LDM-2019-01-09.md)
1. GetAsyncEnumerator signature
2. Ambiguities in nullable array type syntax
2. Recursive Patterns Open Language Issues https://github.com/dotnet/csharplang/issues/2095
## Jan 7, 2019
[C# Language Design Notes for Jan 7, 2019](LDM-2019-01-07.md)
Nullable:
1. Variance in overriding/interface implementation
2. Breaking change in parsing array specifiers