The implementation language doesn't matter. An example of a systems program is a distributed printer spooling program I wrote in ReXX on VM/CMS in the mid 80s. All of our VM/CMS users used it, because it was far more convenient than IBM's offering, and supported our pre-existing line printers and the physically distributed nature of our organisation.
https://news.ycombinator.com/item?id=35092049 - March 2023
https://news.ycombinator.com/item?id=21731878 - December 2019
https://news.ycombinator.com/item?id=17948265 - September 2018
That explains why it's a bit dangerous for the programmer's career.
chmaynard•14h ago
Yoric•13h ago
I seem to recall that "systems programming" was initially penned meant what we now call "application development" [1]. I realize that these days, the two tasks are considered very different, but as far as I understand, that's "just" because we now have access to high-level APIs, the likes of which didn't exist when the name was invented.
In my book, it's "system programming" when you are writing an application and you need to reach to lower-levels than what your language/stdlib/framework typically allows. So the authors of the DeepSeek training mechanism were doing system programming when optimizing communication between cores, but also anybody who sets out to optimize a Python-based app by writing a Rust module, or a Rust developer when they're calling directly into libc, or a C developer when they're writing assembly or performing syscalls, etc. Of course, by this definition, there's no such thing as a "systems programming language", but there are languages that can serve for system programming of other languages.
[1] Which seems to be confirmed by the article, in fact.
fasterik•12h ago
I don't think this is right. Systems programming is a broader term that can include embedded systems, compilers, virtual machines, game engines, etc. At least that's my perception based on how it's commonly used.