Whipping up a new Shell - Lash#Cat9 (UPDATED)
This article introduces the first release of ‘Lash#Cat9’, a different kind of command-line shell.
[...]
Cat9 serves as the practical complement to the article on ‘The day of a new command-line interface: shell‘. That article also covers the design/architectural considerations on a system level, as well as more generic advancements to displacing the terminal emulator.
The rest of the article will work through the major features and how they came about.
A guiding principle is the role of the textual shell as a frontend instead of a clunky programming environment. The shell presents a user-facing, interactive interface to make other complex tools more approachable or to glue them together into a more advanced weapon. Cat9 is entirely written in Lua, so scripting in it is a given, but also relatively uninteresting as a feature — there are better languages around for systems programming, and better UI paradigms for automating work flows.
UPDATE
-
Lash#Cat9: A radical new Linux UI for keyboard warriors • The Register
Lash#Cat9 is a new type of typing-driven UI, which moves beyond terminal emulators. Cat9's power comes from its close interaction with its display server, Arcan. This picks up some of the ideas from X11 and Wayland then goes much further.
If you know your way around Unix, the word "shell" has strong associations, but to get a handle on Cat9, you will have to let them all go. Conventional "shells" are programs that run inside a terminal emulator and let you enter commands. Cat9 is not that type of shell, and that means that most of the coverage of it misses the most important things about it. Saying that, Cat9 is definitely inspired by that sort of UI.
Outside of the Unix world, "shell" is a much more general term. For example, the "Windows shell" is the whole GUI of the OS, as Wikipedia explains quite well. Cat9 isn't that kind of shell either – but combined with the Arcan display server, they have some common ground.