7 ms·
And I will take that, if coupled with demonstrated competence and a solid, sensible vision, over being "nice", "accomodating" and "willing to answer questions",
by a3d6g2f7 14y ago
And I will take that, if coupled with demonstrated competence and a solid, sensible vision, over being "nice", "accomodating" and "willing to answer questions", every time.
This attitude is not true of all OS developers, though. There are lots who are really even-tempered. But they are also very focused and not necessarily willing to accomodate everyone with a "bright idea".
While it might make the learning curve a bit steeper for mere mortals, I actually believe this is what makes a better OS.
I would be interested to see a "Linux" where Torvalds also controlled the userland. What would it be like?
- excuse-me 14y agoYou are looking for a quicker, shorter, terser version of the unix commandline ?
- a3d6g2f7 14y agoVersion? Not sure what you mean. Some other way to interact with the kernel, besides a "shell"? Quicker, shorter, terser sounds good to me, whatever it is. Or maybe you mean if he wrote his own shell?
- excuse-me 14y ago< humor explain=verbose > The parent post said that Linus' writing was extremely terse and "to the point" and what would happen if Linux wrote the userspace. The joke was that Unix's typical user interface, the shell, isn't exactly overflowing with unecessary verbose "fluff"
- comex 14y agoanti-humor mode: It's terse, but not necessarily to the point. Things like "| awk '{print $1}'" or "find . -exec sh -c 'fds' \;" or ""$(echo "$x" | sed 's/a/b/')"" are a lot of characters for their respective purposes; a modern shell adhering to similar principles could do better.
- a3d6g2f7 14y agoI was tempted to say something similar. But this is a thread about Linus. As for your use of find, I rarely ever use find for anything more than printing a recursive dir listing. I always gravitate toward different approaches for doing the other things it can do. Syntax is probably one of the reasons. I'm just not motivated to learn find's idiosyncratic syntax. Why not just make find use C-like syntax as does awk? If I was to redesign UNIX, every utility would, where possible, use a C-like syntax. Because then the user would naturally be learning a little bit about C right from the start. Have you ever tried the k language? If you like terse, it is a pleasure to use. Generally, I like sed as an example of a terse, compact language (and sed seems a logical extension of ed, not something wildly and arbitrarily different), except when it's necessary to use -e to separate commands. Being able to use semicolons to separate commands allows more density. I have always posited the verbosity (and the complexity) of the shell comes from the need for quoting and escaping. If you could avoid those two necessities, the command line could be more concise, and readable.
- comex 14y agoI don't like C-like syntax in Unix tools, as the shell isn't C-like, and it's not clear that it's possible to make it C-like without sacrificing writing speed (lots of parentheses are hard to wrangle interactively); and awk is nice and efficient for some things the shell can't easily do, but it's its own world with a different set of variables and overlapping functionality, and you can't easily stick a pipe in the middle of an awk program. My ideal redesign would take the shell, make the syntax for iteration, pattern matching, arrays, etc. much simpler (integrating the functionality of awk), and (most importantly?) unify the ways various commands expect to receive data and take arguments representing parts of that data (fields, lines)... while still being the shell. Dunno about sed - once I wrote a Brainfuck interpreter in it for fun, but I see it as a Turing tarpit - for things more complicated than "/a/s/a/b/" I prefer awk, though I wish awk had the succinct "s/a/b/", and I wish either of them had a quick way to extract a capture group from a match. (vi was a teenager when I was born, so I personally don't care about adhering to ed.) I've never tried any APL-like languages and am therefore somewhat scared of them... but most of the programs I write outside of the interactive shell are non-throwaway and/or the kind of glue code that uses lots of random system functions, which decreases the value of extreme terseness. (But I prefer anything over Java and dislike the inflexibility of languages without macros, so perhaps it's only logical for me to go ahead and learn an array language.)
- bad_user 14y agoIf he controlled the userland, you definitely wouldn't get Gnome or Unity.