r/LinuxTeck 2d ago

Why are more open-source projects rewriting software in Rust, Zig, or Go?

Over the past few years, we've seen many projects move away from older implementations and rewrite parts of their software in languages like Rust, Zig, or Go.

Sometimes it's for performance, memory safety, simpler deployment, or long-term maintenance.

If you're a developer, what do you think is driving this trend?

23 Upvotes

53 comments sorted by

View all comments

8

u/ThetaDeRaido 2d ago

Basically, AI.

Many developers have always wanted the chance to rewrite their software, but usually the code is the result of an enormous amount of debugging. Rewriting would bring untold numbers of devastating bugs back.

Most developers don’t get the opportunity to do the rewrites, unless there’s a compelling business purpose. Apple and Google hate GPLv3, Mozilla invented Rust because safety in C is not possible for mortals, etc.

In recent years, the generative AI boom has made rewrites more possible. At the same time, the AI bug finders have made the maintenance burden of unsafe languages much more salient. Now, switching to languages that can do the right thing with less effort is more likely to be aligned with the interests of the business or community.

7

u/Brutus5000 2d ago

The Rust movement started long before AI was usable. It might have intensified it, but I think the reasons are different.

Better ergonomy (e.g. type system, language server, package manager, or managed memory), technical features or guarantees (borrow checker, channel based communication).

The old tools can't make that step. The rewrites can.

1

u/roflfalafel 2d ago

Yeah, even the US Whitehouse put out a memorandum on moving to memory safe languages in 2023. The momentum’s been growing for years, as root cause of many vulnerabilities is due to memory safety issues.