Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> so backwards compatibility is maintained.

That's not what backwards compatibility means in this context. You're talking about how a compiler is backwards compatible. We're talking about the language itself, and upgrading from one versions of the language to the next.

Rust 2015 is not the same thing as C89, that is true.

> packages can be broken by simply upgrading the compiler version

This is theoretically true, but in practice, this rarely happens. Take the certainly-a-huge-mistake time issue discussed above. I actually got hit by that one, and it took me like ten minutes to even realize that it was the compiler's fault, because upgrading is generally so hassle free. The fix was also about five minutes worth of work. Yes, they should do better, but I find Rust upgrades to be the smoothest of any ecosystem I've ever dealt with, including C and C++ compilers.



(side note: I don't think I've ever thanked you for your many contributions to the Rust ecosystem, so let me do that now: thank you!)

> You're talking about how a compiler is backwards compatible. We're talking about the language itself, and upgrading from one versions of the language to the next.

That's part of the problem. Rust doesn't have a spec. The compiler is the spec. So I don't think we can separate the two in a meaningful way.


You're welcome!

> So I don't think we can separate the two in a meaningful way.

I think that in that case, you'd compare like with like, upgrading both.

I do agree that gcc and clang supporting older specs with a flag is a great feature, and is something that Rust cannot do right now.

But the results of the annual survey have come out: https://blog.rust-lang.org/2025/02/13/2024-State-Of-Rust-Sur...

And 90% of users use the current stable version for development. 7.8% use a specific stable released within the past year.

These numbers are only so high because it is such a small hassle to update even large Rust codebases between releases.

So yes, in theory, breakage can happen. But that's in theory. In practice, this isn't a thing that happens very much.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: