5 ms·
Sort of unrelated, but Rust doesn't make breaking changes. The language is fully backwards compatible.
by nynx 5y ago
Sort of unrelated, but Rust doesn't make breaking changes. The language is fully backwards compatible.
- leetrout 5y agoIs this due to features being available as macros and such?
- CodesInChaos 5y agoFor syntax level changes, "editions" allow libraries to opt into the new language version while keeping compatibility with old libraries. For most other issues it's simply accepting the suboptimal choices made in the past.
- gmfawcett 5y agoI have some ten-year-old Rust code that would disagree with you. :) [edit -- and yes, it's pre-1.0 code. Not trying to be sneaky, just trying to clarify that the backwards-compatibility guarantee only goes back to a reasonable point in time.]
- nynx 5y agoThat's some impressively old rust code — from long before the initial release of the language!
- freedomben 5y agoMight we say that their code has rusted?
- gmfawcett 5y agoHahah, that is definitely true. :)
- deaddodo 5y agoTo be fair, pre-1.0 Rust was already heavily hyped and available. It's not hard to find plenty of projects from that time.
- lilyball 5y agoRust 1.0 came out 6 years ago. There’s no need to sow confusion by referring to pre-1.0 code here.
- LeifCarrotson 5y agoThat's a major version, yes, but not necessarily sowing confusion. Users have needs that often last longer than 6 years. I got a call last week to update a machine that's running VB 4 code from the mid-90s. It's a spot welder; the casting and transformers are from the 1940s, but the weld controller speaks RS-232 and is from the late 80s. I feel safe assuming the machine will still be in use long after I'm dead. We did a quick update with the original source code to fix a glaring bug that a new operator happened across, but they would like to add a simple database integration feature. The interface simple enough that the update will be a nearly complete rewrite; we'll retain the .ini settings files and custom CSV file format. However, we will be choosing a platform that should last as long as the original. That platform will not be some new hot JS framework that's going to be marked end-of-life before the warranty is up. Not everyone is on a 2-year treadmill!
- cpeterso 5y agoThere's a big difference between maintaining backwards compatibility with VB4 and VB pre-1.0.
- remram 5y agoThe point of it being pre-1.0 is not that it was a different major version, but that it had not reached the first major version. pre-1.0 versions were explicitly ALPHA software subject to constant change as indicated in release announcements e.g. https://mail.mozilla.org/pipermail/rust-dev/2014-October/011267.html https://mail.mozilla.org/pipermail/rust-dev/2014-October/011...