Vision document for H1 2018

R Ryzo1201 at gmail.com
Sun Mar 11 13:36:27 UTC 2018


On Sunday, 11 March 2018 at 07:59:53 UTC, rumbu wrote:
> 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.

Most people do not have issues with the core language of D. You 
can come from any of the above mentioned languages ( like C, C++, 
Rust, PHP, Python, Nim, ... ) and get going with D. That is what 
attracted me in the first place. The language looks good but the 
moment you actually start using D its issue after issue.

With the usual response here: "Why do you not fix it yourself or 
pay for it". Maybe because most people who come want to use the 
tools and be productive and not spend their time fixing up those 
tools.

Its a mentality issue that some do not get here. In order to grow 
you need consumers for your product. If you force or whine to 
them to fix the issues, they leave. When they leave you lose 
potential growth. That loss in growth means losing potential 
members that can fix and want to fix the issues.

One can call it selfish but every language is based upon this 
principle. No growth and community of lots of selfish users means 
no other members to fix the issues. It is the 9 Circles of Hell.

> 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.

+1!

It has the language mostly right but its everything around it 
that is simply a mess. When one compares that to Rust. They are 
not having constant discussion about replacing cargo ( as dub in 
D has issues ). They do not need to have multiple documentation 
generators. The cross platform is simple and fast. Same applies 
to Go. And C# ... Resources simple are more focused and enhance 
the whole platform as such. D is like a children sandbox where 
everybody is playing with their own toys. So when other complain 
about the mess of the playground, the responds by some is just as 
typical.

> The problem is that D stagnates and in the same time C# evolves.

I am sure that lots of D members will be quick to point out, that 
C# is run by a commercial company and D has only open source 
contributors. Now why did you not contribute! /sarcasm

> 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.

Yep ... Things are moving faster in the .net camp thanks to the 
focus on .net Core and the RyuJit.

Here is a fun one, with Blazer now being part of the official 
.net.

https://github.com/aspnet/blazor

Blazer = C# code runable in the browser using WebAssembly.

> 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.

Personally i am waiting to see CoreRT finalized:

https://github.com/dotnet/corert

-> CppCodeGen/C++
-> RyuJIT codegen
-> Webasm

Its already working and getting better by the day.

Other languages are moving forwards at blazing speeds and D seems 
to put it priorities on adding new exiting features. Where as a 
large part of the outcry is the issues with the library, lacking 
editors support, cross platform issues, ...


More information about the Digitalmars-d-announce mailing list