Julien Couvreur
@jcouv
C#/VB language designer and compiler dev at Microsoft (Roslyn). All comments and mistakes are mine; I do not speak for my employer.
Params in C# used to mean arrays. In C# 13, they can be any collection type. In this #OneDevQuestion, @MadsTorgersen explains how params collections let you write cleaner, more efficient APIs.
We merged a C# 14 feature into VS 17.14p3: Null-conditional assignment Permits assignment to occur conditionally within a `a?.b` or `a?[b]` expression. Example: `x?.P = M();` Spec: github.com/dotnet/csharpl…
We merged a C# 14 feature into VS 17.14 (preview 3): partial events and constructors. github.com/dotnet/csharpl…
We merged a C# 14 feature into VS 17.13 (preview 1): First-class Span types. This streamlines usage of Span-based APIs, by improving type inference and overload resolution. Spec: github.com/dotnet/csharpl…
We merged a C# 14 feature into VS 17.13 (preview 2): Unbound generic types in `nameof`. For example, it allows `nameof(List<>)`. Spec: github.com/dotnet/csharpl…
We merged preview support for honoring `unmanaged` constraints in VB into VS 17.13 (preview 2). github.com/dotnet/roslyn/…
We merged the corresponding VB 17.13 feature into VS 17.13 (preview 3) so that the OverloadResolutionPriority attribute is honored in VB.
We merged a preview C# 13 feature into VS 17.12 (preview 1): overload resolution priority. The OverloadResolutionPriority attribute allows fine-tuning the selection of overloads withing a type. github.com/dotnet/csharpl… Example below:
Streaming a video in a DevBox session? This week I learned that Microsoft has a "multimedia redirection" extension that addresses that. Worked great :-) learn.microsoft.com/en-us/azure/vi…
We merged a C# 13 feature into VS 17.12 (preview 3): Better conversion from collection expression element. It improves overload resolution to account for the element type of a collection expressions. github.com/dotnet/csharpl…
We merged a preview C# 13 feature into VS 17.11 (preview 3): partial properties. ``` partial class C { // Definition public partial string Prop { get; set; } // Implementation public partial string Prop { get => ...; set => ...; } } ``` github.com/dotnet/csharpl…