Aucbvax.2082
fa.works
utzoo!duke!decvax!ucbvax!mike@BRL
Sat Jul  4 11:57:46 1981
EMACS -vs- UNIX
Folks -

    "Eric Benson's message implicitly compares the Emacs
design with UNIX.  In his words, Emacs is elegant, UNIX
arcane."

    Both this comparison and the conclusion disturb me.
Comparing an editor (which can be thought of as having 3
levels) with an operating system (which has many levels of
complexity) is kind of off-the-wall, but lets play along...

    INTENT: The intent of EMACS (as I see it) was to
provide a "what-you-see-is-what-you-get" screen editor
which behaved similarly over a wide range of terminal
keyboards (and terminals), and to permit construction
of Macros to implement higher-level features (LISP
indenting, etc).  The intent of UNIX was to provide
a powerful, plesant, and consistent environment for
Computer Science types to experiment and build tools
in.

In a word, the intent of UNIX is "Software Tools",
whereas the intent of EMACS is "Software TOOL".  Humm.

    USER INTERFACE: Everybody will be quick to agree that
EMACS has a simple to learn user interface, at least to
gain "novice" status.  The more intricate commands become
more obscure, and less mnemonic.  (Everybody agrees that
Meta-Control-single_character can get obscure).
"What-you-see-is-what-you-get" is Motherhood and Apple Pie
for screen editors, and EMACS definitely succeeds here.

The UNIX user interface is designed to save typing while
remaining reasonably mnemonic.  A remarkable number of
"Advanced" users can't type very well, so this is laudable.
Unfortunately, this means users take a while longer getting
used to the command abbreviations.  There exist variants of
the UNIX Shell (command interpreter) which accept abbreviated
commands and do other nice, user-helpful things (although the
"standard" (dumb) shells are more common).

Initial EMACS and UNIX users face much the same problem...
LOTS OF SQUINTY LITTLE COMMANDS.

    UNDERLYING STRUCTURE: As I understand it, EMACS can
be thought of as having 3 layers: The user interface/screen
control stuff, the Macro level commands, and the macro
implementation level (Typically TECO).  Certainly, the top
level is easy to use. The Macro level can usually be learned
and profitably USED by ordinary mortals, but the macro
implementation level (TECO or whatnot) requires a Wizard
to get good results.

UNIX can be thought of as a number of levels, nested:

  The terminal driver & line protocol (control/s/q & "cooked" editing).
  The Shell (command interpreter)
  Programs (System commands & User programs have identical status)
  The I/O Library (Buffering & simple file mgmt)
  The System-Calls (Direct requests made to the UNIX Kernel)

While each of these levels may have some overlap and
inconsistencies, the general "clean" philosophy of having
only one mechanism to accomplish one result is generally
evident, and a real pleasure!  [More on this some other day]

"UNIX productivity must be thought of, not in terms of lines
of code written per unit time, but in terms of lines of code
NOT REQUIRED..."

    CONCLUSIONS: I feel that EMACS is one of the better screen
editors around, mostly because of the "macro" facility which
permits powerful features to be built on top, and I feel that
UNIX is definitely the best operating system that has surfaced
to date, because of the consistent system-call interface, and
the "Software Tools" approach to commands.

    HENCE, I think that all UNIXs should have an EMACS, and
everybody should run UNIX!
                               -Mike Muuss
                               Ballistic Research Laboratory

PS:  There exist EMACSs small enough to fit on an 11/34, and
    UNIX runs on everything these days, so this is less of
    a pipe-dream than it may seem!
-------


-----------------------------------------------------------------
gopher://quux.org/ conversion by John Goerzen <[email protected]>
of http://communication.ucsd.edu/A-News/


This Usenet Oldnews Archive
article may be copied and distributed freely, provided:

1. There is no money collected for the text(s) of the articles.

2. The following notice remains appended to each copy:

The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996
Bruce Jones, Henry Spencer, David Wiseman.