←back to thread

.NET 10

(devblogs.microsoft.com)
489 points runesoerensen | 3 comments | | HN request time: 0.027s | source
Show context
high_na_euv ◴[] No.45898190[source]
C# has the best ecosystem out there.

I wish CPP development was as robust as C# development is

replies(1): >>45898531 #
bilekas ◴[] No.45898531[source]
They are very different beasts.. What problems are you having with CPP that you're not with C# ? Funny enough a lot of the 'ecosystem' is on the back of cpp..
replies(2): >>45898555 #>>45899482 #
1. high_na_euv ◴[] No.45898555[source]
Evaluating complex expressions during debugging.

In c# I can evaluate complex linq data transformation in watch window in visual studio during debug, at fly.

In cpp I cannot. Not even nested evaluation is working.

replies(1): >>45898778 #
2. bilekas ◴[] No.45898778[source]
Ah okay, yes, debugging tools are a bit more friendly with C# but it's again the nature of the beast of cpp, but to nitpick this is a compiler area moreso than a tooling issue . CPP will compile direct to binary, whereas C# will compile to machine Lang iirc, an intermediary step anyway, so you can imagine it makes debugging much easier.
replies(1): >>45900058 #
3. maccard ◴[] No.45900058[source]
> to nitpick this is a compiler area more so than a tooling issue

If there’s one thing c++ is good at it’s bikehsedding where the responsibility for fixing this stuff is. When I started programming in c++ 16 years ago, modules were “imminent” and reflection was coming soon.

Modules are still unusable because what we’ve standardised is insanity and the standards committee refuse to make a decision to support the backwards compatibility of tooling and code that will never be upgraded or even used in a modern setting.

The compiler vendors blame the standards committee, the committee say that tooling isn’t their problem,and standardise something that has no theoretical objections but in practice requires deep concessions to the spirit of the idea. At the same time, they’re perfectly content to assume that everything is developed the way they imagine - adding ranges to algorithm and forcing the compile time because modules technically exist.