== Example #1:
$ hyperfine -r 10 \ "target/release/coreutils sort -R shakespeare.txt > shakespeare.txt.rand; \ target/release/coreutils sort shakespeare.txt.rand > /dev/null" \ "sort -R shakespeare.txt > shakespeare.txt.rand; \ sort shakespeare.txt > /dev/null" é [...] Summary 'target/release/coreutils sort -R shakespeare.txt > shakespeare.txt.rand; target/release/coreutils sort shakespeare.txt.rand > /dev/null' ran 4.63 ± 0.19 times faster than 'sort -R shakespeare.txt > shakespeare.txt.rand; sort shakespeare.txt > /dev/null'
To be fair, we can be slower too
Example #3:
$ hyperfine "seq 18446744073708551615 18446744073709551615 | factor" \ "./target/release/coreutils seq 18446744073708551615 18446744073709551615| ./target/release/coreutils factor" [...] 'seq 18446744073708551615 18446744073709551615 | factor' ran 5.08 ± 0.01 times faster than './target/release/coreutils seq 18446744073708551615 18446
===
Redox-OS is rewriting the BSD coreutils in Rust for their own OS. https://github.com/redox-os/coreutils
I wonder what the most efficient and usable alternative operating system tradeoff choice tradeoff would be, perhaps mesalock (a linux with userspace tools compiled with rust)
syllable, haiku, redox, menuet64/kolibri, serenity, icaros desktop, postmarketos, drauger, mesalock
MIT license
How is letting me know that apple can use it without contributing back going to affect my decision on which coreutil to use?
Apple using those utilities could be a good thing. I've used MS PowerShell and WSL a bit, and their implementations of common CLI software is sometimes incompatible. To work around the incompatibilities you end up using proprietary features or doing something inferior. I would be better if they just dropped in the standard utilities. OTOH I understand the fear that they may provide useful proprietary extensions because of an MIT license.
Example, their version of ssh does not allow a script to hand it a password, hence my script was changed to print out "hey, type this password 'blah'" and required user interaction in the middle of an otherwise totally automated process.
Every OS should use the standard (GNU) utilities, or at least a set that aims for complete compatibility (Rust versions).
Are you implying that Microsoft would use the common CLI software interfaces if GNU coreutils weren't GPL? Because I deeply believe they wouldn't. Embrace, extend, extinguish.
WSL (v2) is just a fancy wrapper around a Linux VM though, so the tools you get there are from the distro, not Windows.
I like the idea of setting some variable somewhere, and the Rust Coreutils output JSON, and we can use 'select' and 'where' rather than shaky scraping libraries.
Not sure which ssh you're referring to but openssh doesn't allow it either. There are several hacks to script a ssh login with password.
Maybe, and maybe not. I was specifically asking why should I worry with apple's licensing considerations in my choice of tools to use.
For apple GPL license is a negative thing, they might go for a subpar solution just to avoid it. But for me? As a user, MIT or GPL license changes nothing for me.