Live data from Hacker News

CLIs are reified UIs (2017)

expressionsofchange.org

121–126 of 126 posts

Re: CLIs are reified UIs (2017)

#121

This brings up some interesting ideas about improving a CLI by improving the record keeping making it more deterministic, and enabling undo. Thinking about these 3 features together would essentially give a computer system a version control or tool assisted speed run kind of feel. Every command changes the state, and the system can be rolled back, and experimented with. I really like where this line of thinking could…

What do you mean by "deterministic" in this setting? That each action afforded via the CLI has a specific outcome with only first order effects? That's what I interpret as necessary for the robust undo you describe. Is that what you have in mind? tx.

Re: CLIs are reified UIs (2017)

#122
post #12

Earlier quoted context omitted.

This probably won't work with Unix shell, but some CLIs (JunOS comes to mind) have a context help that's shown when you press "?". But note it's not "? ", you don't need to press enter; merely inputting a single "?" character shows possible things you can append to the command line at that point.

That's not a CLI, that's a TUI. Eg, Dwarf Fortress does this.

How it’s not a CLI? There is a command line, you type in commands.

Re: CLIs are reified UIs (2017)

#123
post #122

Earlier quoted context omitted.

That's not a CLI, that's a TUI. Eg, Dwarf Fortress does this.

How it’s not a CLI? There is a command line, you type in commands.

> But note it's not "?", you don't need to press enter

"Responds to individual keypresses" vs "responds to complete lines" is pretty much the defining feature of TUI vs CLI.

> you type in commands.

KEY_SLASH+MOD_SHIFT is a UI event, not a command.

Re: CLIs are reified UIs (2017)

#124
post #122

Earlier quoted context omitted.

How it’s not a CLI? There is a command line, you type in commands.

> But note it's not "? ", you don't need to press enter "Responds to individual keypresses" vs "responds to complete lines" is pretty much the defining feature of TUI vs CLI. > you type in commands. KEY_SLASH+MOD_SHIFT is a UI event, not a command.

If that were true, bash wouldn’t be a CLI, due to .

What I’m describing is definitely a CLI. You type in commands, such as “show version”. It’s just a bit smarter about command completion and context help.

Re: CLIs are reified UIs (2017)

#126

I have an experimental GUI that uses a simple language to reify interactions as described here. It works great.

I would love to see it.

Cheers! It's not really ready yet but I could really use some feedback:

Docs: https://xerblin.readthedocs.io/en/latest/

Project: https://sr.ht/~sforman/Xerblin/

Repo (browse or clone): https://git.sr.ht/~sforman/Xerblin

I am in the process of adding more information to the docs. The code should run on a recent version of Python 3. The underlying language is Joy and the package for that is on PyPI so it should (fingers crossed!) download and install automatically if you run setup.py (I think). I'd appreciate any feedback you can give me. Ciao!

Post reply on HN