Why many programmers don't like GC?

ddcovery antoniocabreraperez at gmail.com
Tue Jan 19 10:36:13 UTC 2021


On Monday, 18 January 2021 at 15:18:40 UTC, aberba wrote:
> From my experiencing freelancing, I've come to see that a large 
> portion of clients' decision stems from other things like 
> familiarity and ecosystem (packages, frameworks, vendor/cloud 
> support, engineering hiring pool, consultants/support 
> availability, tooling, marketing/popularity/fomo/community, 
> etc)... including things that usually comes from the community 
> and stakeholders. For D we don't really have any measure of 
> community size. Only looking at the forum can be misleading.

I agree.  Ecosystem is one of the most important things to take 
the choice. In particular, when a team of developers need to 
engage a new project they don't just talk about language:  they 
talk about process model, frameworks, libraries... and tooling 
for solving common development/testing/deployment tasks (i.e.:  
debugging).

Go and Rust are really clever about its paradigms decisions and 
no one (as far as I perceive) is discussing if GC must be removed 
from Go or added to Rust:   developers see what language offers 
them and they decide.

D toke it's key decisions in the past:  of course it is a 
"generalist" language trying to convince C or C++ developers, but 
this is really frustrating when there is no a way to perform 
decent debugging in linux with vscode (like 
https://youtu.be/X2tM21nmzfk?t=352) while the community is 
dedicated to discussing the sex of angels (multiple inheritance, 
GC/no GC, exceptions/no exceptions, ...).

A good friend developer told me months ago:  "If you are 
experienced with Node, C# or Scala and you expect to find their 
functionalities in other language like D, you just will get 
frustrated:  adapt to what the language offers you or jump to 
other options".

D is D:  take it or not. This language is not the holy grail.  If 
D is not C++ and you love to work with C++, just work with C++ 
(or take a try with Rust and it's Ownership memory model if D 
pros are not enough for you).  If D is not C and you love to work 
with C, just work with C (or take a try with Go and it's GC if D 
is not enough for you), but think about the thousands of 
experienced developers that where looking for something mature to 
work with and found that D was not an option.

> Also maybe the GC and other complaints (genuine or not), which 
> I'm also a culprit, might actually be a contributing to 
> people's first impression of D when they visit the forums. I 
> have a strongly suspicious of this.

Me too:  I'm absolutely convinced.







More information about the Digitalmars-d-learn mailing list