5 ms·
The "too many dependencies" meme is far too often an example of Chesterton's Fence. The answer to your question "How come a simple thing is more complex than I
by scrollaway 4y ago
The "too many dependencies" meme is far too often an example of Chesterton's Fence.
The answer to your question "How come a simple thing is more complex than I first thought?" is: "Because you've spent less time thinking about it than the author".
- nonameiguess 4y agoThis isn't true, though. If this had been an older GNU utility, the dependencies likely would have been libterm and libc. Not because it would have been less complex, but because of the ecosystem choice in C applications to have larger, fully-featured libraries versus the micro-libraries Rust seems to have inherited from JavaScript conventions. Whether this is better or worse seems to be a matter of contention for a lot of people, but it certainly poses a challenge for supply-chain auditing. I suspect for Rust to truly ever replace C++ in its domain, the ecosystem is going to need to come up with something like boost so you can grab one library that does all the things nearly any program wants (regex, serialization, cli opts, etc) but that don't get included in the core language's stdlib.
- avgcorrection 4y agoDoesn’t C come out of that weird do-one-thing-and-do-it-well culture?
- nibbleshifter 4y ago> If this had been an older GNU utility, the dependencies likely would have been libterm and libc. Yes, but then you are stuck with glibc + kitchen sink and GNU code quality, which is atrocious.
- saagarjha 4y agoAtrocious but exceptionally battle-tested?
- nibbleshifter 4y agoIt was the best option a long while ago, and basically resulted in a kind of vendor lock in of sorts. Musl is far superior as a libc, but most Linux software is written for glibc and has quirks that make porting hard.
- saagarjha 4y ago> Musl is far superior as a libc Nope. It’s better at some things but with so many caveats that this is just dumb to claim.
- alerighi 4y agoMusl is liked since it has a non-copyleft license and thus can be used to produce statically-linked executable that are distributed with proprietary licenses. Also Musl is smaller than GLibc thus more suitable for embedded systems. Anyway, GLibc is just better, both in terms of performance (algorithms are more optimized, at the cost of a bigger executable size) and in terms of available features.
- enriquto 4y ago> Musl is liked since it has a non-copyleft license Not only for that. As much as I love copyleft, I'm really happy that musl exists so that I can easily test my programs locally for portability. Compiling stuff with different compilers and libraries exposes at once all sorts of weird bugs before you get to publish your codes.
- pessimizer 4y agoI don't think you can cite Chesterton's Fence for something that is 5 minutes old and lightly used. The Chesterton's Fence meme is far too often an excuse for baselessly dismissing criticism.
- scrollaway 4y agoThis project is 7 months old with almost 800 commits. The comment I replied to is less than 100 characters long plus a command line invocation. One of these two has spent more time thinking about whether some dependencies are needed.