csharplang/meetings/2017/LDM-2017-10-09.md

81 lines
1.7 KiB
Markdown
Raw Normal View History

2017-12-06 02:06:17 +01:00
# C# Language Design Notes for Oct 9, 2017
***Warning: These are raw notes, and still need to be cleaned up. Read at your own peril!***
# 882 Negated if or negative patterns
Three approaches
1. bang outside if condition (then should I do that on while etc, too) `if !(o is int i)`
2. negative patterns (but not very useful recursively) `not int i`
3. `is not` as an expression operator
# 867
Avoid some statement cliffs...
Put it in X.X with a note to consider again when we have match expressions
# 414
There's a "there" there.
2018-01-25 22:11:49 +01:00
We think this should be addressed, and will keep the championing issue to represent it.
2017-12-06 02:06:17 +01:00
However, it should be different:
1. It should not be strongly tied to the `Dictionary<K, V>` type, but be target typed
2. We should look at initializing immutable objects (also for object and collection initializers)
3. We already have index initializers. Are they good enough?
# 973 Declaration expressions
Last time, we had two issues:
1. Weren't ready to commit to scoping rules
2. Weren't sure that we could get decent error recovery on syntax
1 is dealt with.
2 was more that it was hard to show intellisense because more things were legal
Scenario is introduce a local variable in expressions without having to use trivial pattern matching. Also ref.
We feel like we need to spend more time with it to judge its value. 8.0 for now to trigger that discussion.
# 881 and 33
Fits with nullable in 8.0
# 185
Settle this in the 7.3 timeframe
# 187 Blittable
# 435
# 287
# 32
# 125
Missing, but not much ask for it
# 111
We would want to deal with single parameters. A problem is that discards do not shadow today, whereas identifiers do. We may want to change that.
# 191
Need more motivation
# 190
Some open design discussions
#