4 ms·
But the D standard library also relies largely on a garbage collector, so it's questionable that it differs much from Go in that respect. As most things, it's
by danieldk 11y ago
But the D standard library also relies largely on a garbage collector, so it's questionable that it differs much from Go in that respect.
As most things, it's a spectrum and not binary. Userland is also part of an operating system and could be written in Go without much trouble. One could also argue that things like Docker are also systems programming.
Go is less 'systems programming' than C, C++, or Rust, because it has a garbage collector. Go is more 'systems programming' than Java, C#, node.js or Ruby, because it compiles to native binaries, provides value types (C# does too), integrates more tightly in standard UNIX APIs, etc.
- Sean1708 11y agoFWIU D is actively trying to reduce it's dependence on a GC, while go has decided that the GC is here to stay.
- Ace17 11y agoBTW, as D can call C functions. Thus, in theory, you could choose to use only the C standard library, and use D as a "C with a better syntax". This way, no garbage collector nor any bloat gets linked into your program ... but you still benefit from RAII, templates, array slices, and simplified declaration syntax.