About whether D / rust / golang can be popular.

Robert M. Münch robert.muench at saphirion.com
Thu Nov 26 11:16:09 UTC 2020

On 26 Nov 2020 at 06:46:59 CET, "zoujiaqing" <zoujiaqing at gmail.com> wrote:

> Whether a programming language can be popular depends on what?

Mostly non-technical aspects...

> ## Go
> Must kill skill: Goroutine

* Stability with minimum breaking changes over a long time
* Development in the large and long-term maintainability

> Availability: the standard library is powerful. IDE powerful. 
> High GC efficiency. friendly debugging tracking tool. It is 
> convenient to realize various functions based on standard 
> library.

* Big eco-system
* Super simple setup and out-of-the-box experience
* Cross-compilation

>  But language  features are too few.

That's a big plus, if not the biggest. There are not X ways to do thing, but
mostly one way. Go code is totally boring and that's good.

We considered D for our next big project but will not use it, even I like many
the technical aspects. We will use Go, because you just get a lot of stuff
done right and straight forward.

> ## Rust
> Must kill skill: Memory Security

* Super pedantic compiler
* Super pedantic standard library
* Big eco-system
* Super simple setup and out-of-the-box experience

> Availability: The standard library is very general. IDE powerful. 
> friendly debugging tracking tool. A variety of language features, 
> and will be based on popularity of new features, such as await. 
> Have practical pprof and other tools. Development efficiency of 
> using rust is relatively low.

I wouldn't second that. If you want to go for systems programming, IMO Rust is
the way to go.

> ## D
> Must kill skill: It looks good?
> Availability: standard library is poor. Bad IDE. GC efficiency is 
> low. Lack of friendly debugging tracking tools. Lack of pprof and 
> other practical tools. Although the language features many but 
> can not add popular practical features, such as await.

With limited resources focus becomes key. Focusing a volunteer group on some
goal is very hard and requires good community management.

D is too fragmented and unpredictable, which is a No-Go if you want to use it
for anything serious. It was a hard way to come to this conclusion, because I
really like many aspects of it.

And, D is a huge language, it's far from simple.

Robert M. Münch
smarter | better | faster

More information about the Digitalmars-d mailing list