5 ms·
I'm surprised there's no reference to rust epochs [0]. Sure, they haven't seen use in the wild to learn lessons from in that regard, but they're a very well tho
by TheDong 8y ago
I'm surprised there's no reference to rust epochs [0]. Sure, they haven't seen use in the wild to learn lessons from in that regard, but they're a very well thought out solution to an effectively identical problem.
They both ended up with very similar results (define a version in cargo.toml/go.mod, use that version of the language to build), but there's also more to it than that, and the rust proposal could help guide discussion of other possible issues too.
[0]: https://github.com/rust-lang/rfcs/pull/2052 https://github.com/rust-lang/rfcs/pull/2052
- steveklabnik 8y ago(They’re called “editions” now, by the way https://blog.rust-lang.org/2018/07/27/what-is-rust-2018.html https://blog.rust-lang.org/2018/07/27/what-is-rust-2018.html )
- Thaxll 8y agoI'm not sure it's wise to talk about Rust in those discussions, Rust is the language that needs nightly for a lot of recent libraries to work... talking about stability / backward compatibility.
- steveklabnik 8y agoWhich libraries are you talking about? Empirically, the majority of Rust users use stable. Additionally, the nightly/stable split exists to serve exactly this problem; if you need stability, you use stable, and the need for nightly drops each and every release.
- Thaxll 8y agoI think the most popular web framework is rocket.rs, it needs nightly. That's latest example I have, honestly when I looked a year ago others libraries were using nightly.
- dx87 8y agoWhy would you tell people that the recent libraries require nightly, when you admit that you haven't even looked at the library ecosystem in the past year? I honestly don't get the motivation that would make you want to come here just to post lies about a programming language.
- wokwokwok 8y agoHey hey, calm down a little. I use rust a lot, and it’s been heavily geared towards nightly for a long time. The whole rust nightly/beta/stable hasnt worked well, because (afaik) the beta usage is tiny and people tend to jump on nightly or stable. It’s only very recently any effort has been made to change this for the new edition. ...so, you know, the comment may not be entirely accurate, sure, but it’s our fault people have come away from rust feeling that way. The OP is not at fault here, and definitely not, I think, willfully lying. Take a deep breath; there’s no need for this sort of attitude, and frankly it reflects badly on the rest of us (rust users).
- oconnor663 8y ago> The whole rust nightly/beta/stable hasnt worked well, because (afaik) the beta usage is tiny and people tend to jump on nightly or stable. It’s only very recently any effort has been made to change this for the new edition. My impression was that most people feel the Beta toolchain is doing its job just fine, because most projects that use CI include a Beta test run. I don't think the plan was ever to have people using Beta on the command line as their daily driver.
- wokwokwok 8y agoThe recent regression soundness issues last release were indicative of people not using the beta. Notice specially the last month or so of actively asking people to try the beta. If it wasn’t a problem, that wouldn’t be happening.
- 8y ago
- pcwalton 8y ago> I'm not sure it's wise to talk about Rust in those discussions, Rust is the language that needs nightly for a lot of recent libraries to work No, it doesn't.
- chc 8y agoI don't think the fact that Rust is introducing features at a brisk pace, and the fact that people start writing libraries around them before they're released, have anything to do with whether Rust's backward and forward compatibility policies are good or bad. It seems unlikely, if Rust's policies do a good job of maintaining guarantees in a chaotic environment like that, that they would fail in a more placid environment.
- TheDong 8y agoI'm drawing a parallel between editions and Go's planned "go2" compatibility. Whether Rust has some differences in its versioning, the situations are similar enough that I assert Rust's choices are relevant. The fact that Rust itself may or may not have stability or backwards compatibility (I mean, I think it objectively does) isn't actually as important as the fact that the rust team wants to have those things and has thought hard about basically the same problem Go is tackling now, and has already taken the effort to write down its thoughts and conclusions. If you want to claim I shouldn't bring up Rust's "editions" work, I'd rather you talk about the "editions" RFC rather than Rust's slightly different versioning scheme.
- dgoldstein0 8y agoI suspect rust isn't referenced because these things play out on the scale of years, and rust is only 1 year in, so it'd probably be premature to judge. Sure, it's a good source of ideas, but it's too soon to really have enough data to judge the results. These other languages have over a decade behind each of them.
- steveklabnik 8y agoRust has been stable for three years.