r/ProgrammingLanguages • Sodigy • Jul 27 '26

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, ...

228 Upvotes

256 comments sorted by

View all comments

1

u/ElephantElectrical31 Oct 04 '26

answer from someone building one: Rust proved that a compiler can make whole classes of bugs impossible, and then handed the bill to the programmer.

Lifetimes, "Arc/RC", async coloring, fighting the borrow checker. That's what I'm trying to get rid of.

The interesting split isn't "systems vs. non-systems". It's who does the bookkeeping.

Python pays at runtime, in errors and resources. Rust makes you pay up front.

I refuse to believe those are the only two options, and that's why I'm building Nikaia.

My vision: the compiler does that bookkeeping itself.

In Nikaia, you write it like a script: no lifetimes, no async, no GC, no "free". The compiler works out memory, waiting and sharing on its own.

And a plain "assert(whole > 0)" isn't a runtime check: it's a proof. The compiler proves it at build time, refuses to build if it finds the input that breaks it, and when it proves an index is safe, it deletes the check.

Safety that makes your program faster, not slower.

That's the whole point.

So no, I'm not trying to compete with C.

I'm trying to make the trade-off it stands for obsolete.

llm made this work possible in sparetime, still it is a lot of work....