The "no gc" crowd

ponce contact at gam3sfrommars.fr
Tue Oct 8 08:43:45 PDT 2013


At least on Internet forums, there seems to be an entire category 
of people dismissing D immediately because it has a GC.

http://www.reddit.com/r/programming/comments/1nxs2i/the_state_of_rust_08/ccne46t
http://www.reddit.com/r/programming/comments/1nxs2i/the_state_of_rust_08/ccnddqd
http://www.reddit.com/r/programming/comments/1nsxaa/when_performance_matters_comparing_c_and_go/cclqbqw

The subject inevitably comes in every reddit thread like it was 
some kind of show-stopper.

Now I know first-hand how much work avoiding a GC can give 
(http://blog.gamesfrommars.fr/2011/01/25/optimizing-crajsh-part-2-2/).

Yet with D the situation is different and I feel that criticism 
is way overblown:
- first of all, few people will have problems with GC in D at all
- then minimizing allocations can usually solve most of the 
problems
- if it's still a problem, the GC can be completely disabled, 
relevant language features avoided, and there will be no GC pause
- this work of avoiding allocations would happen anyway in a C++ 
codebase
- I happen to have a job with some hardcore optimized C++ 
codebase and couldn't care less that a GC would run provided 
there is a way to minimize GC usage (and there is)

Whatever rational rebutal we have it's never heard.
The long answer is that it's not a real problem. But it seems 
people want a short answer. It's also an annoying fight to have 
since so much of it is based on zero data.

Is there a plan to have a standard counter-attack to that kind of 
overblown problems?
It could be just a solid blog post or a @nogc feature.


More information about the Digitalmars-d mailing list