What's new in C# 8
blogs.msdn.microsoft.com
blogs.msdn.microsoft.com
We are approaching the point where .NET full framework becomes legacy, deprecated by .NET Core.
NetStandard 2.1 things like Span<T> are already in NETCore 2.1 now, but won't be in the next release of fullFramework, .NET Framework 4.8.
Which .NET Framework will they arrive in, and when, if ever? That question has not been answered, even with an approximation or roadmap.
var area = figure switch
{
Line _ => 0,
Rectangle r => r.Width * r.Height,
Circle c => c.Radius * 2.0 * Math.PI,
_ => throw new UnknownFigureException(figure)
};
So more and more of F# is making it's way to C#. Between this and better tuple literals, I'm very happy about this!(I still need to get around to learning F# for real though, I really love it's brevity.)
These changes will have a comparable effect to what LINQ, generics, lambdas and async/await all did, and when you look at code that was created prior to those features it definitely looks 'legacy' today.
You're right, it will be legacy. And the job is to support the business, and that means maintaining, fixing, extending the existing code. The legacy code. It's going to be a long time until the bulk of it is up to date with all of this.