It's actually rather rare to *need* to avoid the GC -- only
niche applications need that, like if you're writing a game
engine that has to avoid stop-the-world pauses (which can be
easily worked around, btw), or real-time medical applications
where if it stops for 10ms somebody dies. 90% of real world
programs out there work just fine with the GC.
Actually it's my case. I'd LOVE to use D for game development for
instance, but I won't take the risk of having the GC pause the
game when I don't want to, even for just an unknown amount of
milliseconds, and even if I know that anyway I'll try to limit
dynamic allocations by using caches etc.
Of course, for everything else (scripts, tools, servers, etc),
now I use D and I'm glad with it. Because for that same scripts
and applications, I could have used any other garbage collected
language (JavaScript/, C#, etc), so no problem for that.
And that's my point.
D is probably the best alternative to C++, Java, C# and Node.js.
Better than Rust too.
But for D to succeed as a viable alternative to C++ where it's
mandatory to use it, it must have a minimalistic version of
Phobos that makes it easy and natural to use D with manual memory
management.
Maybe it's already the case, but then I suggest that you should
promote it louder, so that people don't even feel the need to try
Rust for instance.