A couple decades ago everyone was on static types. But then people got sick of the boilerplate, and in what I think was a backlash, dynamic languages like JavaScript, Python, Ruby, etc. took the world by storm. With the raised bar of developer expectations when it comes to agility, static type systems were forced to innovate, and now type-inference and related features are coming to all static languages and bringing us back around to a best-of-both worlds situation. Exciting times.
With this the language gets a little more beautiful. On a related note, I just switched from a C# job at Microsoft (microservices) and moved to a Java shop where we're all really just starting to learn Kotlin and migrate our work there. I'm shocked how many times we've learned a fancy feature and I get to say, "actually, C# has something just like this too." (i.e. operator overloading) It is a surprisingly modern language keeping up with the other ones.
Here's a link to the official summary.<p><a href="https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/proposals/csharp-10.0/lambda-improvements" rel="nofollow">https://docs.microsoft.com/en-us/dotnet/csharp/language-refe...</a><p>Lambdas can also have attributes now, too.
There's something clearly wrong with the code samples: look at the </string> "closing tags" which somehow sneaked in in line 17 of the first sample
C# 10 didn't introduce many new features.<p>I hate they delayed the introduction of Algebraic Data Types again. Maybe they will appear in C# 11.<p>Using ADT in F# makes it a breeze to do domain modeling.
I love how this make MapGet/MapPost/MapPut and such useless, and we can just have one MapAction to run them all. I hope .NET 6 would be getting more and more attention and competitive against Java. Java's language and syntax, it's so bad right now.
If you haven’t yet, check out the C#10 blog post, it has details covering all the changes: <a href="https://devblogs.microsoft.com/dotnet/welcome-to-csharp-10/" rel="nofollow">https://devblogs.microsoft.com/dotnet/welcome-to-csharp-10/</a>.<p>This version brings quality of life changes that make it simpler and nicer to write readable code, which is great to see IMHO.
I love how the second to last code sample has three closing </string> tags, and the blog name is "don't code tired." (Also, really looking forward to using the new type inference.)