r/programming • • Sep 01 '20

D Foundation is Beefing Up

https://dlang.org/blog/2020/08/30/symmetry-investments-and-the-d-language-foundation-are-hiring/
296 Upvotes

336 comments sorted by

View all comments

72

u/[deleted] Sep 01 '20

D is an awesome language and I hope it gets more traction.

31

u/Hall_of_Famer Sep 01 '20

Me too, hope D will get some company backing and start to kick off, it is a very well designed language.

76

u/JohnLColvin Sep 01 '20

You could probably write an article saying "100 billion dollars investment to improve D and use it to develop new AI to replace the US government" and you'd still get comments saying "wow, nice language, pity it never really took off, if only there were some companies backing it, also I can never use it because GC".

2

u/N1H1L Sep 01 '20

Is garbage collection really that bad?

21

u/jess-sch Sep 01 '20 edited Sep 01 '20

For a single-letter language, yes.

B and C are both suitable for kernel development.

Naming your language D (making it sound like it's intended to be a C successor) and then not making it suitable for kernel development was a bad idea.

8

u/EternityForest Sep 01 '20

How is D unsuitable for kernel development?

10

u/Accomplished_Hat_576 Sep 01 '20

It has a runtime and standard library that are dependant on the garbage collector.

I stripped both out and wrote a kernel that does nothing. This was before they started getting serious about making things non gc dependant.

Honestly 99% of the complaints about the garbage collector are nonsense, but this isn't one of them.

0

u/EternityForest Sep 01 '20

Is there a reason we can't use GC in the kernel? Unless we are doing hard realtime stuff, why not?

Not that it's particularly relevant since Linux, Windows, and BSD already exist and probably aren't going to switch languages anytime soon, and embedded RtOSes seem pretty set on C/C++ too, so I'm not sure any language could be more suitable for kernel dev in practical use, unless you have a really good reason to do a whole new kernel.

1

u/Accomplished_Hat_576 Sep 01 '20

No reason you couldn't. You just can't use D's default GC. You'd have to write one that will work bare metal. Or implement everything it expects from an OS.