3 ms·
Powershell, for example, tries to address these points by naming commands more verbosely, having verbose flags and even having programs input and output object-
by cue_the_strings 6y ago
Powershell, for example, tries to address these points by naming commands more verbosely, having verbose flags and even having programs input and output object-y data instead of just plain text.
These are all nice ideas that don't work very well in practice because the verbosity is only beneficial when writing scripts and is just cumbersome for interactive use. Also, Linux (and other Unix-likes in general) are better designed to be used w/ scripted and cli tools, and the object nature of IO often just gets in the way. But the biggest issue is that the built-in tools just arent as powerful as POSIX core utilities and especially GNU-extended ones.
- csb6 6y ago> These are all nice ideas that don't work very well in practice Yeah I agree with what you said about Powershell, but I think there is a balance. Some Unix programs have the ‘—-‘ style verbose flags, which is good. However, I would argue that the overall Unix-like environment fails all the time and causes massive, needless headaches, not just because of syntax/flag name lengths, but because libraries and config files are stored all over the place, depending on implicit features of the environment. I guess my main point is that Unix is like death by one thousand cuts; it is modular/composable/flexible, but in an extremely haphazard and janky way that makes developing in it painful in ways it doesn’t have to be. We haven’t really seen the ideas I was talking about in practice (e.g. optional typechecking between programs), so it’s not really clear how they’d end up working out. But there has to be a better way than the Unix way (as it is right now).
- majkinetor 6y agoThere is nothing correct in those observations. >These are all nice ideas that don't work very well in practice Cmon people, stop repeating this nonsense. You have both in powershell. > and the object nature of IO often just gets in the way. ??! Object nature of pipeline is one Out-String away from arcane way.