3 ms·
What about applications with soft or hard real time requirements? (So, for example, a video game or an audio player.) I am not aware of any GC language which is
by DowsingSpoon 10y ago
What about applications with soft or hard real time requirements? (So, for example, a video game or an audio player.) I am not aware of any GC language which is suitable for use in this space. Go certainly is not.
What about any application that cares in the slightest about performance? In this case, memory layout is incredibly important, and many (most?) of those higher level languages are immediately disqualified.
- fauigerzigerk 10y agoCorrect me if I'm wrong as I'm not an expert in this field at all, but aren't hard real time systems written so that no memory allocation or release happens during normal operation? I'm sure there are other reasons why Go would rarely be considered for a hard real time system, but purely from a memory management perspective you could simply disable the GC. And then of course there is also Rust.
- thomastjeffery 10y agoRust was made specifically to fill this void. The only problem is that libraries you would want to use (ie for a video game or audio player) are written in C/C++, and therefore much easier to interface with using C/C++. Fortunately that is changing at a fairly good pace. The most difficult thing about using Rust instead of C is that you must wrap your head around the borrow checker.