On Sat, 7 Oct 2017 07:01 am, bartc wrote: > On 06/10/2017 20:38, Grant Edwards wrote: >> On 2017-10-06, bartc <b...@freeuk.com> wrote: >> >>> For sort, there is no real need. You use a text editor to create >>> your data. Then use existing file-based sort. >> >> I sort streams on stdin far more often than I sort named files. > > So what's been established is that 'sort' is useful for a text stream > that already exists as a file or is the output of another process.
Indeed. And "another process" can just as easily be a human at the keyboard, although we must keep in mind the primitive line-oriented editing facilities of stdin (basically backspace and that's it). > What hasn't been established is why how this works this has to influence > the design of simple text-based dialogues, real ones where there will > likely be an actual user tapping the keys in real time. Obviously it doesn't, and as far as I can see, nobody has suggested that such primitive facilities should be treated as the archetype of *user-oriented* application programming. There are other kinds of programs than those aimed primarily at direct use by users. As I interpret what people have been saying in this thread, the claim is far more modest: - sort is designed for use in pipelines, as a typical Unix tool; - the way to exit sort is the same way you exit pretty much everything in the Unix command line, using EOF (Ctrl-D); - Unix admins and even Unix end users learn Ctrl-D just as Windows users learn ESC and Ctrl-Q and Alt-F4 and the other myriad standard ways to exit an application in the Windows world; - as a Unix tool rather than a text-based application with a rich user-interface, it doesn't need verbose output, introduction messages, help screens, and all the other bells and whistles; - although there is a valid argument to be made that sort could be a little more user-friendly in interactive use without badly compromising its primary purpose. But that's a matter of taste. Besides, we know what the nirvana of user-interfaces should look like: https://www.gnu.org/fun/jokes/ed-msg.html > The only tenuous connection I can see, is that if 'sort' is run without > any piped or redirected input, it will resort to the keyboard. It doesn't "resort to the keyboard", that's just how stdin works. If you have a car built to drive on roads, and you drive it up onto the lawn, the car doesn't need a special mode that detects the missing road and "resorts to driving on the lawn". It just happens. Stdin is like that. > Even though that method is not user-friendly True enough. `sort` is not designed to be a end-user application, although it can be used by the end-user. > and hardly anyone ever uses it in that mode. Translation: "I don't use it in that mode". > So that same unfriendly technique should be the model for > text dialogues everywhere. I'm pretty sure that nobody said that. -- Steve “Cheer up,” they said, “things could be worse.” So I cheered up, and sure enough, things got worse. -- https://mail.python.org/mailman/listinfo/python-list