Plan for D

Ola Fosheim Grostad ola.fosheim.grostad at gmail.com
Mon May 17 20:06:05 UTC 2021


On Monday, 17 May 2021 at 19:32:14 UTC, JN wrote:
> Selection bias is in play here too. Rust is getting more 
> popular, previously Go was starting to gain popularity also,

Go is far far far more used than Rust will ever be...

> but just as many languages succeed, many fail to reach the 
> expectations. You have languages like Nim or Crystal, which 
> have their own fanbases, but are relatively unknown in the 
> general programming population (also, most programmers aren't 
> really familiar with Rust/Go either). D is also in that 
> category.

And here is the real trouble, more and more viable hobby 
languages are emerging, so the hobbyists are split up and eco 
systems suffer, so language enthusiasts gravitate towards the 
bigger ones that have polished that one feature they are 
interested in.

> But you also have languages which should succeed by most 
> metrics, and yet they don't. Look at Dart. It's a well designed 
> language (it's one of my favorite languages), it has good IDE 
> support, it has Google behind it, and yet it never reached wide 
> adoption. Outside of Flutter, the usage of Dart is very 
> limited, and TypeScript took most of those usecases instead.

This is inaccurate, I was an early Dart adopter. To keep it 
short, Google has sabbotaged it on numerous occations. First by 
designing it as a deliberately bland dynamic language (later made 
more static), then by not supporting it in Chrome as promised, 
then by having poorer framework support for it than for other web 
languages, add to this that debugging dart code in browsers was 
worse tha TypeScript and you have the reason for why I will not 
use Dart in web apps in the near future. 100% selfinflicted 
wounds.

> As for Rust, most people aren't flocking to Rust for memory 
> safety or for GC-less memory management.

That is obviously wrong.

> Borrow checker isn't attracting people to Rust. It's a bonus, 
> catching more bugs during compile time, but it's not the main 
> feature. The main features that attract people to Rust is the 
> cohesive story, good vision and a good ecosystem of tooling, 
> libraries and binding

The eco system was nonexisting when Rust gained momentum and 
attention. That attention was 100% driven by safe system 
programming. Btw, the same was true for Go initially, they later 
had to admit that they did not offer a proper solution for 
systems programming...

> Just like people did webdev with Python not because Python is 
> great for webdev, but because it's good enough and easy to get 
> started.

Python is excellent for web dev. Never found anything that can 
touch it in that domain (assuming cloud).

> Sure, we can switch the language from garbage collection to 
> manual memory management or reference counting. Will it change 
> much? I doubt it, the people complaining about GC would just 
> complain about RC.

Without ARC, probably.

> We don't have dozens of paid developers working on D full time. 
> We have to manage with the resources we have, and spreading 
> them thin over the language is not the optimal usage of such 
> resources.

That's true, the best solution is to reduce the feature set and 
improve metaprogramming, but nobody wants to see features removed 
and new features are being cheered on, so D is and is likely to 
stay a growing language experiment, which is perfectly ok by me 
as a D hobbyist
... It is what the process is making it to be, which is more one 
of growth than metamorphosis.

But lets not extrapolate too much from other languages, most of 
them follow a different process and are driven by other ideas and 
ideologies.





More information about the Digitalmars-d mailing list