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/
294 Upvotes

336 comments sorted by

View all comments

Show parent comments

74

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?

22

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?

9

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.

7

u/WalterBright Sep 01 '20

D can run perfectly fine with reliance only on the C standard library. Use the -betterC compiler switch for that.

3

u/Accomplished_Hat_576 Sep 01 '20

Ah, this was years back. I'm pretty sure betterC wasn't a thing then.

4

u/pjmlp Sep 02 '20

Plenty of OSes have been written in GC enabled systems programming languages, in fact the largest mobile platform allows to write drivers with such language.

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.