| ▲ | mustache_kimono 17 hours ago |
| > this is gonna cause more pushback regarding the rust in the kernel movement. Only among those that don't understand that, if this is a problem, then it is Canonical problem, not a Rust problem. To give another example, Canonical includes ZFS in Ubuntu too. And, for a while, Canonical shipped a broken snapshot mechanism called zsys with Ubuntu too. Canonical ultimately ripped zsys out because it didn't work very well. zsys would choke on more than 4000 snapshots, etc. zsys was developed in Go, while other snapshot systems developed in Perl and Python did a little less and worked better. Now, is zsys a Go problem? Of course not. It wasn't ready because Canonical sometimes ships broken stuff. |
|
| ▲ | zahlman 17 hours ago | parent | next [-] |
| > Only among those that don't understand that, if this is a problem, then it is Canonical problem, not a Rust problem. (This is hard to express in a careful way where I'm confident of not offending anyone. Please take me at my word that I'm not trying to take sides in this at all.) The dominant narrative behind this pushback, as far as I can tell, is nothing to do with the Rust language itself (aside perhaps from a few fringe people who see the adoption of Rust as some kind of signal of non-programming-related politics, and who are counter-signaling). Rather, the opposition is to re-implementing "working" software (including in the sense that nobody seems to have noticed any memory-handling faults all this time) for the sake of seemingly nebulous benefits (like compiler-checked memory safety). The Rust code will probably also be more maintainable by Rust developers than the C code currently is by C developers given the advantages of Rust's language design. (Unless it turns out that the C developers are just intrinsically better at programming and/or software engineering; I'm pretty skeptical of that.) But most long-time C users are probably not going to want to abandon their C expertise and learn Rust. And they seem to outnumber the new Rust developers by quite a bit, at least for now. |
| |
| ▲ | mustache_kimono 15 hours ago | parent | next [-] | | > Rather, the opposition is to re-implementing "working" software I understand the argument, and its sounds good as far as most things go, but it misses an important fact: In OSS, you can and should find your own bliss. If you want to learn Rust, as I did, you can do it by reimplementing uutils' sort and ls, and fixing bugs in cp and mv, as I did. That was my bliss. OSS doesn't need to be useful to anyone. OSS can be a learning exercise or it can be simply for love of the game. The fact that Canonical wants to ship it, right now, simply makes them a little silly. It doesn't say a thing about me, or Rust, or Rust culture. | | |
| ▲ | zahlman 14 hours ago | parent [-] | | > That was my bliss. OSS doesn't need to be useful to anyone. If you can afford it, sure. Some would really prefer to at least be able to get some attention (and perhaps a paid job) this way. | | |
| ▲ | mustache_kimono 13 hours ago | parent [-] | | > Some would really prefer to at least be able to get some attention (and perhaps a paid job) this way. Not that I agree, but people seem to be giving uutils lots of attention right now? A. HN front page vs. B. obscure JS framework? I'll take door "A"? I had someone contact me for a job simply because my Rust personal project had lots of stars on Github. You really don't know what people will find interesting. |
|
| |
| ▲ | inejge 15 hours ago | parent | prev | next [-] | | > The dominant narrative behind this pushback, as far as I can tell, is nothing to do with the Rust language itself (aside perhaps from a few fringe people who see the adoption of Rust as some kind of signal of non-programming-related politics, and who are counter-signaling). Difficult to say with certainty, because it's easy to dress "political" resistance in respectable preference for stability. (Scare quotes because it's an amalgam in which politics is just a part.) Besides, TFA is Phoronix, whose commentariat is not known for subtlety on this topic. Replacing coreutils is risky because of the decades of refinement/stagnation (depending on your viewpoint) which will inevitably produce snags when component utilities interact in ways unforeseen by tests -- as has happened here. But without risk there's no reward. Of course, what's the reward here is subject to debate. IMO the self-evident advantage of a rewrite is that it's prima facie evidence of interest in using the language, which is significant if there's a dearth of maintainers for the originals. (The very vocal traditionalists are usually not in a hurry to contribute.) | |
| ▲ | 17 hours ago | parent | prev | next [-] | | [deleted] | |
| ▲ | knowitnone3 14 hours ago | parent | prev [-] | | so why create Wayland when we had X? why create another linux distro when there are so many already? why create C if we already had assembly? why create new model cars every year? why architect new homes every year? What you are proposing is we stop making changes or progress. | | |
| ▲ | zahlman 14 hours ago | parent | next [-] | | I don't propose this; I explain the apparent reasons why others do. | |
| ▲ | bsder 7 hours ago | parent | prev [-] | | > so why create Wayland when we had X Because X11 had a lot of issues that got papered over with half-baked extensions and weird interfaces to the kernel. The problem is that Wayland didn't feel like doing the work to make fundamental things like screen sharing, IMEs, copy-paste, and pointer warping actually ... you know ... work. The problem Wayland now has is that they're finally reaching something usable, but they took so long that the assumptions they made nearly 20 years ago are becoming as big a problem as the issues that were plaguing X11 when Wayland started. However, the sunk cost fallacy means that everybody going to keep pounding on Wayland rather than throwing it out and talking to graphics cards directly. And client rendered decorations was always just a mind bogglingly stupid decision--but that's a Gnome problem rather than a Wayland issue. |
|
|
|
| ▲ | pornel 16 hours ago | parent | prev | next [-] |
| This is more nuanced in Rust's case. Rust is trying to systemically improve safety and reliability of programs, so the degree to which it succeeds is Rust's problem. OTOH we also have people interpreting it as if Rust was supposed to miraculously prevent all bugs, and they take any bug in any Rust program as a proof by contradiction that Rust doesn't work. |
| |
| ▲ | shikon7 15 hours ago | parent | next [-] | | It might be a bit of bad publicity for those who want to rewrite as much as possible in Rust. While Rust is not to blame, it shows that just rewriting something in Rust doesn't magically make it better (as some Rust hype might suggest). Maybe Ubuntu was a bit too eager in adopting the Rust Coreutils, caring more about that hype than about stability. | | |
| ▲ | b_e_n_t_o_n 15 hours ago | parent [-] | | > Rust is not to blame Isn't that an unfalsifiable statement until the coreutils get written in another language and can be compared? | | |
| ▲ | mustache_kimono 15 hours ago | parent [-] | | > Isn't that an unfalsifiable statement Sounds pretty axiomatic: Rust is not to blame for someone else's choice to ship beta software? |
|
| |
| ▲ | carlmr 13 hours ago | parent | prev | next [-] | | >OTOH we also have people interpreting it as if Rust was supposed to miraculously prevent all bugs, and they take any bug in any Rust program as a proof by contradiction that Rust doesn't work. Yeah, that's such a tired take. If anything this shows how good Rust's guarantees are. We had a bunch of non-experts rewrite a sizable number of tools that had 40 years of bugfixes applied. And Canonical just pulled the rewritten versions in all at once and there are mostly a few performance regressions on edge cases. I find this such a great confirmation of the Rust language design. I've seen a few rewrites in my career, and it rarely goes this smoothly. | |
| ▲ | mustache_kimono 15 hours ago | parent | prev | next [-] | | > Rust is trying to systemically improve safety and reliability of programs, so the degree to which it succeeds is Rust's problem. GNU coreutils first shipped in what, the 1980s? It's so old that it would be very hard to find the first commit. Whereas uutils is still beta software which didn't ask to be representative of "Rust", at all. Moreover, GNU coreutils are still sometimes not compatible with their UNIX forebears. Even considering this first, more modest standard, it is ridiculous to hold this software to it, in particular. | | |
| ▲ | collinfunk 14 hours ago | parent [-] | | You would not be able to find the first commit. The repositories for Fileutils, Shellutils, and Texutils do not exist, at least anywhere that I can find. They were merged as Coreutils in 2003 in a CVS repository. A few years later, it was migrated to git. If anyone has original Fileutils, Shellutils, or Textutils archives (released before the ones currently on GNU's ftp server), I would be interested in looking at them. I looked into this recently for a commit [1]. [1] https://www.mail-archive.com/coreutils@gnu.org/msg12529.html |
| |
| ▲ | hulitu 14 hours ago | parent | prev [-] | | > OTOH we also have people interpreting it as if Rust was supposed to miraculously prevent all bugs That is the narative that rust fanboys promote. AFAIK rust could be usefull for a particular kind of bugs (memory safety). Rust programs can also have coding errors or other bugs. | | |
| ▲ | carlmr 13 hours ago | parent [-] | | >That is the narative that rust fanboys promote. Strawmanning is not a good look. |
|
|
|
| ▲ | b_e_n_t_o_n 15 hours ago | parent | prev [-] |
| It's not about rust specifically, it's about replacing working software with rewrites and going from a code base written in a single language to one written in multiple. |