7 ms·
>But ... firstly, let's stop with the Unix worship. They didn't deliver, even in the domain of the terminal. My copy of `ls` has at least 40 flags GNU is Not U
by throwaway31381 3y ago
>But ... firstly, let's stop with the Unix worship. They didn't deliver, even in the domain of the terminal. My copy of `ls` has at least 40 flags
GNU is Not Unix.
I count 13 flags on both Unix V10 [1] and on Plan 9 [2], its spiritual successor.
[1] http://man.cat-v.org/unix_10th/1/ls http://man.cat-v.org/unix_10th/1/ls
[2] http://man.cat-v.org/plan_9/1/ls http://man.cat-v.org/plan_9/1/ls
- cpach 3y agoI think you’re actually making the point for him here. You are correct that GNU is not Unix. And what version of ls has the most installations? I betcha it’s the ls from GNU Coreutils. I do agree that GNU tools are sometimes too maximalist. But they are also more useful than the minimalist alternatives.
- abwizz 3y agoseems like you agree that the extra flags make sense
- cpach 3y agoIn many cases, yes! On my Mac, which has a userland derived from FreeBSD, I have voluntarily installed stuff like GNU Findutils and GNU sed to get that extra functionality.
- tuukkah 3y agoTo me, the point is you don't need many flags for ls to be useful. You will learn a few idioms early, such as ls -a and ls -lR but after that, the rest of the flags are nice to haves: if you wish there was a certain feature, you can look it up on the man pages etc. "I wish I could sort by time - oh there's -t"
- throwaway31381 3y agoI don't believe GNU's triumph over the BSD derivates was for the most part technical, they just happened to be at the right moment at the right time to ride along Linux's success. A consequence of the proliferation of arguments in the GNU tools is imho that it made the GNU manpages too verbose and information dense to the detriment of their usefulness.
- cpach 3y agoGood point. However: The users could have revolted and gone to *BSD land instead. But for some reason, most users didn’t.
- jmclnx 3y agoThat is because of the "lawsuite", unless you are referring to the 80s. Back then, Companies and Colleges were the ones who got UNIX. Companies went with AT&T, and IIRC Colleges when with BSD. So AT&T won out due to better financial backing and maybe a possible threat of AT&T going after BSD.
- jacquesm 3y agoThat's exactly why RMS is so pissed at Linux being mentioned without GNU. The funny thing is that it is the license he shipped his code under that allowed them to do this, he could have made the license say 'if you use this code you are required to prefix the name of any project with 'GNU/'' and that would have been that. If you give people rights and freedom they will use them.
- toast0 3y agoIf he wanted advertising/acknowledgement, he might have considered the BSD license instead.
- noelwelsh 3y agoThis is a version of a No True Scotsman argument: the True Unix did not have these flags and therefore these flags are not part of the Unix Way. The extra flags were added over time because the One True Unix did not provide the functionality that people needed in real world use. They couldn't be added in a composable way because of failures in the shell programming model (unstructured text + sh is terrible). The Unix shell model was broken from the start.
- throwaway31381 3y agoI won't deny the useful additions GNU and BSD made to the barebones UNIX tools, but just by skimming the ls man page I can list some flags whose addition wasn't caused by the Unix Philosophy's limitation: -1 list one file per line -C list entries by columns -t sort by time, newest first; see --time -r, --reverse reverse order while sorting -S sort by file size, largest first --sort=WORD sort by WORD instead of name: none (-U), size (- S), time (-t), version (-v), extension (-X), width
- edgyquant 3y agoNo that’s literally what GNU stands for.
- loph 3y agoI hold in my hand a "Unix Reference Card," second edition, March 1979. There are 10 options listed for "ls": l, f, a, s, d, r, u, c, i, f, g My recollection is that this card was for Unix V7.