top | item 42127301

.NET 9 Is Out

83 points| edtech_dev | 1 year ago |github.com

38 comments

order

llm_nerd|1 year ago

lakomen|1 year ago

I'd be interested in seeing .net9 vs Java 22 vs Go vs Rust. But this probably won't happen. Simple hello world, Graphql, Grpc, RESTful api with a simple model.

And then spice up the concurrency and measure memory consumption as well, a 24h test.

matdehaast|1 year ago

Memory usage for that synthetic web server benchmark is massive! 90% reduction

mirages|1 year ago

I just want to point out that for years Microsoft told us to abandon WinForms and jump on WPF. Now we're years later and Winforms keeps getting new features.

leosanchez|1 year ago

They didn't add anything significant to the language this year. Maybe next year we will get new extensions feature.

Dwedit|1 year ago

Is this the feature that would let you put extension properties on everything?

The most obvious way to store backing fields for arbitrary objects is to have a global concurrent dictionary that stores weak keys, and a compiler-generated class to store the backing fields as the value. But then you have a performance problem of needing to do a lookup from a weak-concurrent-dictionary every time you access any extension backing field.

The higher-performance alternative would be a second shadow variable in code that uses the extension backing fields. Do your dictionary lookup, then cache the backing-fields-object so you don't need to redo lookups for it. But that would be function-local.

If the extension property doesn't need a new backing field, it's trivial, you're just making a new getter and setter function pair.

jf22|1 year ago

Did you mean C# the language?

mihular|1 year ago

Yep, nothing much for average applications. It's a pity that extension properties didn't make the cut.

qingcharles|1 year ago

That was on purpose. There was a lot of issue-closing on GitHub. Especially MAUI which got a ton of bug fixes.

WillAdams|1 year ago

Is there a development environment for this which is graphical and interactive and as easy-to-use as say Visual Basic 1.0 or Livecode (formerly Runtime Revolution which was a HyperCard clone)?

mmerlin|1 year ago

The nearest thing is probably a Monaco based IDE that generates self-contained executables (like VB before .Net) with modernization for todays OS ecosystem.

twinBasic https://twinbasic.com

Joker_vD|1 year ago

It's always a bit amusing to see comments like "ooh, large performance improvements, that's great" and "meh, no new shining language features, maybe next year" next to each other, but it does show that there is a healthy variety in the user base.

balencpp|1 year ago

They’re not mutually exclusive. Most of the large performance improvements are from .NET, the runtime and compilers. They’re not related to C#.