An *(acronym) for Textual *(User Interface).

Its peculiarity is the ability to embed, into an ordinary <em>text</em> 
precisely, commands which can be executed at user wish, usually 
positioning the cursor onto a word, which correspond to a command, and 
tapping a special key on the keyboard or clicking on it with a mouse 
(like an hypertextual link).

The _(output) of this command could be shown in another frame/window or 
near the word/command itself. In the latter case you can think to a TUI 
as a free-form spreadsheet which evaluate on demand (examples of this 
are _(CoSy) NoteComputing Environment, which was based on _(APL) and now 
on _(K) and <em>probably</em> _(The Humane Environment) by Jef Raskin, 
based on _(Python)).

See, from the _(Oberon) _(FAQ):
<UL CLASS="links">
  <LI>_("CLI compared to TUI" | http://www.oberon.ethz.ch/cli.html)
</UL>

Here is a fragment of their quote from
<STRONG>comp.lang.oberon</STRONG>:

<BLOCKQUOTE> [..] At the base level a _(CLI) offers absolutely nothing 
over a TUI (Textual User Interface). What do I mean by "base level"? 
Does anybody here, besides me, go back far enough to remember _(CP/M)? 
That's a "base level" _(CLI). It has little, if any, scripting, no 
piping or redirection, etc. A _(CLI) means that when you press "ENTER" 
the command is executed. With a TUI you can do pretty much the same 
thing, except that the command isn't executed until you click on it. 
Someone raised the issue of "when" can you type in a command in a TUI. 
Answer? Anytime you feel like it! <STRONG>You don't have to open up a 
"blank window" and type your new command in.</STRONG> You don't have to 
put the new command into the log. <STRONG>You can put it in any document 
you happen to be working on.</STRONG> Say if you're editing a module and 
you want to test a new command. Just type it in and click on in the that 
same window. It's just that simple.  Sure, it takes more to type in:

<CODE>System.DeleteFiles file1.txt file2.txt file3.txt ~</CODE>

than:

<BR><CODE>del file1.txt</CODE>
<BR><CODE>del file2.txt</CODE>
<BR><CODE>del file3.txt</CODE>

But if that's all you can see, you're missing the point. Names in 
typical _(CLI)s are short (and cryptic) because you're likely to type 
them again, and again, and again. The Oberon TUI saves on typing, hence 
command names can be longer and more meaningful. [..] -- J. M. Drake 
</BLOCKQUOTE>