unc.1658: UNIX objections: WHAT I WA (phs.194 followup)

utzoo!decvax!duke!unc!wm utzoo!decvax!duke!unc!wm
Thu Jan 7 23:03:49 AEST 1982


Well, here is what I want:
If you ever get the chance, look at the user interface of the
DX10 operating system on Texas Instruments 990 minicomputers.
Don't look at the operating system, just the user interface.  It
is menu oriented, with the top level menu listing several more
menus for each of several general areas such as file commands,
system commands, etc.  There are sub-menus, etc.  When you find
the command you want, you type in its name.  Immediately a new
type of menu springs up, listing all the options for that com-
mand, and supplying defaults for most of the options.  If you
like all the options, fine, or you can change any and all of
them.  For example, if you were just editing a file, and then
type the command for the fortran compiler, the command uses as
the default source input file name the name of the file you were
just editing.  The error listing, output listing, and compiled
output can all be directed to files of the user's choosing, or
just to the defaults.  Now, for experienced users, there is no
reason to use the menus, just type in the name of the command
directly.  If you know you are going to like all of the defaults,
which is often the case, just type in the name of the command,
followed by a period, and the command menu will be skipped.  What
all this means is that you only see a menu if you want to, not
all these mandatory menus of some systems that are fine for be-
ginners but annoying for anyone with more that 2 days use on the
system.  In addition, if you don't like the defaults that the
system is coming up with each command is just a file written in a
language called SCI which you can edit just like any other text
file and change to whatever defaults you wish. When you want a
file listed to the terminal, you just leave the file name for it
blank, and instead of scrolling the file up the screen, the file
is dumped to a special file called the terminal local file, which
is then dumped to the terminal.  The advantage of this is that I
can scroll back and forth through this file instead of having to
read it as it goes by and roll the terminal memory up, only to
find that the line I want is lost forever.  If there is an error,
the error messages for the entire system are standardized.  If
you are writing a program which can detect a certain error, you
pass back a standard error code, which is decoded and printed out
as a short message, or the user can use the error code to look in
an (online) manual for a longer description of the problem.  This
operating system has the best user interface of any I have ever
used.  I have gone back and used it after not seeing it for a
while and been almost instantly comfortable with it.  If I have
forgotten the name of a particular command, I can find it quickly
in the menus.

Not that it is perfect.  I would REALLY like to see this sort of
user interface on a UNIX operating system (I am assuming that the
user interface is independent of the operating system and the
user programs).  Unfortunately, UNIX has choosen to spread its
user interface all over the place. First, when I can't remember
the name of a certain command, or want to do something, but can't
remember how to do it, I have to search through a thick manual,
or if I can remember some parts of it, use the apropos command
(which I can't remember how to spell half the time anyway).
There is no way to say "give me all the commands that deal with
changing my user information".  Second, once I know the name of
the command, I have to remember all the options for it, often
with one letter names that are more cryptic than the name of the
command itself.  Even so, when I type in a command with all of
its hyphen options and shell excapes, some of it is handled by
the shell, some of it is handled by the user program, etc.  Find-
ing out all the options available to the shell is rediculous (how
many people can even understand the manual entry for the C shell,
let alone remember it).  Last, if I make an error, at best I get
a VERY cryptic error message, or I typed a shell escape in by
mistake and the system does something totally wrong, or else de-
cides to read from standard input and the terminal just sits
there waiting for me.

Ah, I hear you saying, why don't you just write a new shell like
this.  Well, you can't, at least now without rewriting all the
commands on the system.  As has been mentioned, each command has
to roll its own user interface.  You would have to rewrite all
the commands, many of which we do not have the source for.  Of
course, many of the manufacturers that are coming out with
"Unix-like" operating systems have this opportunity, but of
course they are blowing it and coming out with the same old
mish-mash of a user interface.  Unix is a great operating system
trapped in the body of a terrible user interface.



More information about the Comp.unix.wizards mailing list