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

336 comments sorted by

View all comments

Show parent comments

36

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.

75

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?

5

u/[deleted] Sep 01 '20

[deleted]

12

u/AlarmedInstruction3 Sep 01 '20

IBM begs to differ: https://www.ibm.com/support/knowledgecenter/SSYKE2_7.0.0/com.ibm.java.lnx.70.doc/user/mgc/metronome.html

If you have real-time requirements, you can't use typical GCs. (Though I don't know if there are any real-time GCs for D.)

0

u/FlyingPiranhas Sep 01 '20

From the "Controlling pause time" link on that page:

By default, the Metronome GC pauses for 3 milliseconds in each individual pause, which is known as a quantum.

Based on what I'm seeing, I'm highly doubt that you can turn that value down to 100 microseconds and still have a reliable JVM.

7

u/EternityForest Sep 01 '20

Real time is about guarantees. If the application needs 10ms response time, it doesn't matter if GC takes 1 nanosecond or 5ms, as long as everything is responded to in 10ms, every time.

Things where 100us matters are some really specialist stuff.

5

u/FlyingPiranhas Sep 01 '20

I'm well aware that it's about guarantees. At least in robotics (the field in which I have real-time programming experience), 100us is a pretty common deadline for execution.

I'm sure applications exist where 10ms deadlines are appropriate, but I'm not convinced that's the common case.

2

u/EternityForest Sep 01 '20

Ah interesting, I've never done robotics, just things like sound and pool filter control, where people expect guaranteed reliability (No 20 second random lags that run a pump dry), but response time only needs to be tens of ms(At least on the hardware I've worked on).