Hacker News new | past | comments | ask | show | jobs | submit login
The Return of the Unix Shell (sigops.org)
15 points by todsacerdoti on Oct 12, 2021 | hide | past | favorite | 4 comments



We need to change how shells are working in the same way we need to change how email is working.

No change needed whatsoever. The technology is perfect in its simplicity and independent from big tech mafia.


At the very least, the core utilities need an overhaul. Grep, find, text manipulation utils, maybe some other ones could benefit from a more consistent and modernised (CLI UX-wise - modernising features is waaay out of scope) interface so newbies and intermediate users alike don't get lost (I definitely have no desire to keep Googling "how to do X" every time). The modern efforts to rewrite them such as ripgrep, bat and fd seem to be doing a good job.

As long as the new and the old are available alongside each other, I don't see why this wouldn't benefit the field of computing as a whole.


You probably would have liked the IBM System/38 - AS/400 - System i - IBM i (whatever it's called now) command line.

It had a defined standard vocabulary and a system for defining commands.

Built-in command names were constructed out of a few verbs, a few adjectives and a few nouns. To compile a Cobol program, the command was CRTCBLPGM - create cobol program. So, verbs were CRT, CHG (change), DLT, DSP (display), and a few special cases. Likewise there were limited lists of objects (PGM, here) and adjectives (CBL).

There was also direct help for commands.

You typed in CRTCBLPGM and pressed F4. You got a TUI, with labeled fill-in-the-blank fields for all the arguments, with mandatory arguments indicated as such, default values displayed for optional ones, selection for those that have a fixed list of allowed values (e.g. YES, NO), and with help text available for each parameter, each parameter value for enumerated values, and for the command as a whole. So the command is its own man page, pretty much.

If you didn't know the name of the command you wanted, there was a topic-organized menu system, think GNU `info(1)', also available from the command line.

Having gone through the menus and found the command you wanted, you could start the fill-in-the-blank execution of it right from the menu.

After filling in the arguments but before pressing Enter, you could press a function key (F12?) to see the command as it would have been typed out directly on the command line, for future reference or for pasting into a script.


That kind of command line builder is definitely something I'd like to see. Makes it much easier to built complicated one-off commands.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: