
How to Build an Inverse Parser (1997) - networked
http://www.erasmatazz.com/library/the-journal-of-computer/jcgd-volume-6/how-to-build-an-inverse.html
======
smarks159
> An inverse parser treats each command as a sequence of words obeying a
> grammar -- in other words, a sentence. The sentence is composed by the user
> by adding words in sequence until the sentence is complete. This has an
> important benefit: it uses a metaphor (the sentence) that the player already
> grasps, thereby collapsing the menu navigation problem into a construct that
> the player is comfortable with.

This essentially describes how the UI of Doug Engelbart's NLS system worked.
Each command was describe in a DSL called the command meta language. These
grammars where then compiled into a tree over which the command interpreter
followed as the user entered in commands. At each step the UI would display
feedback to the user about what input they had already entered.

I implemented such an interface in my first prototype of the system that I
built in anyone wants to play around with such an interface.[1] I am currently
working on a cleaner and more accessible version, but it is still in the
design phase and not usable yet.

[1] [https://github.com/smarks159/hyperdocument-system-
wiki](https://github.com/smarks159/hyperdocument-system-wiki)

------
Apanatshka
This sounds a lot like auto-completion in a good IDE.

~~~
collyw
Pretty much what I was thinking. The article is dated 1997 and I am pretty
sure I didn't see an autocomplete for nearly to a decade after that (tab
completion, yes).

I love autocompletes from both a user and developer viewpoint (they stop my
users entering crap, and it's significantly easier for them as well).

------
jbranchaud
I enjoyed the closing line of the article:

> That is, after all, the acid test of a truly clean user interface: nobody
> notices it.

------
strangecasts
In case anyone's wondering, "the Siboot project" refers to the game _Trust &
Betrayal: The Legacy of Siboot_, which had the player negotiating with AI
agents to gather information needed to win "mind combat" duels:

[https://youtu.be/7ErHi8uElYI](https://youtu.be/7ErHi8uElYI) (2:20 shows an
example conversation)

e: It seems the Internet Archive has an emulated version as well:

[https://archive.org/details/msdos_Trust_and_Betrayal_-
_The_L...](https://archive.org/details/msdos_Trust_and_Betrayal_-
_The_Legacy_of_Siboot_1987)

Sadly, it doesn't seem to have the manual.

~~~
networked
Several abandonware websites host the manual but I am not sure if legally, so
I won't link to them here. While Chris Crawford used to distribute the
"classic" Mac OS version of the game as freeware he has since removed the
freeware downloads from his website.

