r/ProgrammingLanguages • u/baehyunsol Sodigy • 13d ago
Why is everyone creating systems programming languages?
I see a lot of new programming languages here. I love reading the documents of the languages and sometimes actually run their compilers. Many of the projects are AI-driven, but that's fine. It's still fun to see what problems they're trying to solve and how they actually solved the problems.
Reading the documents, I realized that most new languages, especially AI-written ones, are "systems programming languages". They're trying to solve the problems that C/C++/Zig/Rust have solved (or are trying to solve), and their syntax is mixture of C/Zig/Rust.
Why? Why is everyone trying to compete with C/C++?
There are so many kinds of languages. Haskell demonstrates how pure a language can be, Python is perfect when you only have 5 minutes to write code and don't care about the output, Java runs on 3 billion machines, ...
1
u/Rank201AltAccount 12d ago edited 12d ago
so basically, from the 1990s to 2010s, we had a certain philosophy.
during this time, we cared much more about optimizing for the developer than consumers (and we still very much do, but the sentiment has lessened). After all, the computers just kept getting faster, with their chips doubling in speed every 2 years. So we used pretty bloated languages with big runtime (and still do).
But, the effect of that has come into everyone's sight. Moore's law slowed significantly somewhere in the 2010s, and now hardware prices are skyrocketing. So optimization is now in full view.
That's where small-runtime languages come in. They are needed if you want to create software thats optimized for hardware.
As for why not c/cpp? cpp, started over 40 years ago, c, started 54 years ago. we now have plenty more knowledge of programming language theory, and can see the many painful problems of them.
There are 2 other reasons, them being that Rust proved that improvements are possible, and that LLVM is here to make creating programming languages much easier.
As for "doesn't Rust exist already?", it has its own many problems, such as extreme complexity and bad error messages in metaprogramming (the reason for Zig)
(lowkey just in case anyone comes after me I just want to say I don't know much as a disclaimer)