Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Many of us believe on automatic memory management for systems programming

The problem is the term "systems programming". For some, it's kernels and device drivers. For some, it's embedded real-time systems. For some, it's databases, game engines, compilers, language run-times, whatever.

There is no GC that could possibly handle all these use-cases.



But there could be a smoother path between having a GC and having no GC.

Right now, you'd have to switch languages.

But in a Great Language you'd just have to refactor some code.


Why would you have to switch languages? There are no languages with 'no GC', there are only languages with no GC by default.

Take C - you can either manually manage your memory with malloc() and free(), or you can #include a GC library (-lgc is probably already on your system), and use GC_malloc() instead. Or possibly mix and match, if you're bold and have specific needs.

And if ever some new revolutionary GC method is developed, you can just replace your #include. Cutting-edge automatic memory management forever.


Except there is, only among GC-haters there is not.

People forget there isn't ONE GC, rather several of possible implementations depending on the use case.

Java Real-Time GC implementations are quite capable to power weapon targeting systems in the battlefield, where a failure causes the wrong side to die.

> Aonix PERC Ultra Virtual Machine supports Lockheed Martin's Java components in Aegis Weapon System aboard guided missile cruiser USS Bunker Hill

https://www.militaryaerospace.com/computers/article/16724324...

> Thales Air Systems Selects Aonix PERC Ultra For Java Execution on Ground Radar Systems

https://vita.militaryembedded.com/5922-thales-execution-grou...

Aonix is nowadays owned by PTC, and there are other companies in the field offering similar implementations.


Look, when someone says "There's no thing that could handle A,B,C, and D at the same time", answering "But there's one handling B" is not very convincing.

(Also, what's with this stupid "hater" thing, it's garbage collection we're talking about, not war crimes)


It is, because there isn't a single language that is an hammer for all types of nails.

It isn't stupid, it is the reality of how many behave for decades.

Thankfully, that issue has been slowly sorting out throughout generation replacement.

I already enjoy that nowadays we already have reached a point in some platforms where the old ways are nowadays quite constrained to a few scenarios and that's it.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: