With that out it the way... This rust infatuation seems like those people using one click tools to interpolate videos with "AI"
The end result is objectively worse and it's done because of subjective opinion: (gleefully) these artifacts are so SMOOTH!
Moving coreutils to rust is similar. The unit test coverage is low, and the problems they're seeing don't inspire confidence
Predictability in the tools is being traded for memory safety. I'd worry about using these behind any scripts, an extra \n from an obscure pipe driven bug could mean portability disaster
Edit: For example, these quirks https://www.pixelbeat.org/docs/coreutils-gotchas.html
Even with all of the talent in the world and infinite time to plan, I still feel confident saying that perfect compatibility wouldn't exist
There's simply so much scope, and different edge cases that may be depended on... somewhere
Cost/benefit doesn't make sense
Edit: Write new tools in whatever language, but coreutils is like the _cornerstone_
Right now Rust toolchain is not stable enough for something we will use the next 30 years.
> I'm probably just a grumpy C/C++ programmer
Yes! I always find it weird that technologists can be some of the most conservative luddites there are. I guess it is just human nature.
I heavily disagree that "what isn't broken shouldn't be touched", BUT: I feel like, if we're going to rewrite something in Rust, why not take something that has serious issues? Now, I get the cross-platform part, windows users want to use unix-y tools without using a unix, that's fair and good.
But beyond that, the fourth sentence in the readme,
> platform-specific C, a language considered unsafe compared to Rust
which I generally agree with, makes me suspicious; I see an issue with this, because of all possible C programs, I believe the GNU Coreutils are written in pretty good style and, due to a lot of them being super simple, have very little room for the common "C bad, Rust good" kind of issues.
The GNU Coreutils are heavily tested, and have proven themselves to be quite a solid codebase, so I don't see why rewriting it is necessary. Especially when it turns out that they are not close to done after even 8 years and seem very complicated compared to the C equivalents.
All this is not even mentioning the countless "crash when doing X" issues on the uutils github.
I'm probably just a grumpy C/C++ programmer, and I think I'm missing the big "this needs to happen" argument here, so take this with a grain of salt.