On Sunday, 11 March 2018 at 07:59:53 UTC, rumbu wrote:
On Sunday, 11 March 2018 at 01:10:28 UTC, psychoticRabbit wrote:
On Sunday, 11 March 2018 at 00:36:19 UTC, Dylan Graham wrote:

And personally, depending on the problem, C# is better to program in than D. I still don't know why C# programmers are willing to give up C# and prefer to use D.
C# is vastly surperior for what it does.


Because, even the language creators seem to not recognize this, D looks like C# with *native compilation*, the syntax is 95% identical. Basically, if my source code doesn't use any .NET framework function, it will compile successfully with dmd without any (major) change.

I suppose that every C# programmer is enthusiastic on the first contact with the D language, but fails to keep his enthusiasm when he sees Phobos. C# programmer's mind is locked in the OOP world and Phobos looks like a mess from his point of view.

The problem is that D stagnates and in the same time C# evolves. Sometimes I feel like the C# language team is using D as inspiration for the new features, starting with C# 7.0, a lot of D concepts were introduced in the language: local functions, '_' as digit separator, binary literals, ref returns, tuples, templates, immutability. Guess what the next version of C# has on the table: slices.

In the same time, D delegates new features (and sometime existing ones) to library implementation, instead of assume them in the language syntax.

My opinion is that the day when C# will compile to native (on any platform), the C# developer interest in D will drop instantly.

It's a good thing not bad that other languages are inspired by what works. Languages aren't in a vicious battle to the death, a Hobbesian war of all against all. If C# gets better, that's great!

I don't think D is stagnating at all - on the contrary, it's amazing to see the ecosystem flourishing, no matter where you look - documentation, adoption, libraries, commercial adoption.

I think it's reasonable to disagree with the strategic decision made to move capabilities from compiler to libraries. But you really have to make an argument about why you disagree if you are you expect to be persuasive because there is a thought-through argument for the choices made, which I am sure you must be familiar with.

I don't think it matters much whether you are right about what happens to C# programmer interest in D dies as soon as C# native cross-platform is ready because D is quite an ambitious language and doesn't need to depend on adoption from any one community to continue growing at an impressive rate. As it happens though, as an empirical matter I doubt it.

C# slices look great. I wanted to use them for generating wrappers for our analytics. Not that easy for that purpose, from what I could see. Looks like the primitives are stack only, and I tried to figure out how to use them elsewhere and gave up because it wasn't that easy.

If Phobos looks like a mess to C# programmers, so much the worse for C# programmers. However I doubt they this is true in the general case. It's better in many ways, but different and unfamiliar and everything unfamiliar is disconcerting in the beginning.






Reply via email to