x'11' (17) The MTS Editor's visual command vs. Unix vi

posted Dec 22, 2013, 5:33 PM by Jeff Ogden   [ updated Jun 1, 2014, 8:11 PM ]
From:  http://lists.freebsd.org/pipermail/freebsd-questions/2005-October/101788.html
At 1:25 PM -0600 10/17/05, M. Warner Losh wrote:
>In message: <20051017003501.GB41769 at thought.org>
>             Gary Kline writes:
>:	vi was the first screen/cursor-based editor in computer
>:	history.
>Are you sure about this?  I was using screen oriented editors over a
>1200 baud dialup line in 1977 on a PDP-11 running RSTS/E on a Behive
>BH-100.  Seems like one year from vi to being deployed at Berkeley to
>a completely different video editor being deployed on a completely
>different os in the schools that I used this in seems fast.  So I did
>some digging.
>vi started in about 1976[1] as a project that grew out of the
>frustration taht a 200 line Pascal program was too big for the system
>to handle.  These are based on recollections of Bill Joy in 1984.
>It appears that starting in 1972 Carl Mikkelson added screen editing
>features to TECO[2].  In 1974 Richard Stallman added macros to TECO.
>I don't know if Carl's work was the first, but it pre-dates the vi
>efforts.  Other editors may have influanced Carl.  Who knows.

I arrived in RPI in 1975.  In December of 1975, we were just trying
out a mainframe timesharing system called "Michigan Terminal System",
or "MTS", from the university of Michigan.  The editor was called
'edit', and was a Command Language Subsystem (CLS) in MTS.  That
meant it had a command language of it's one.

One of the sub-commands in edit was 'visual', for visual mode.  It
only worked on IBM 3270-style terminals, but it was screen-based and
cursor-based.  The editor would put a bunch of fields up on the
screen, some of which you could modify and some you couldn't.  The
text of your file was in the fields you could type over.  Once you
finished with whatever changes you wanted to make on that screen, you
would hit one of 15 or 20 interrupt-generating keys on the 3270
terminal (12 of which were "programmable function keys", in a keypad
with a layout similar to the numeric keypad on current keyboards).
The 3270 terminal would then tell the mainframe which fields on the
screen had been modified, and what those modifications were.  The
mainframe would update the file based on that info.

I *THINK* the guy who wrote that was ...  Bill Joy -- as a student at
UofM.  I can't find any confirmation of that, though.  The closest
I can come is the web page at http://www.jefallbright.net/node/3218,
which is an article written by Bill [The Dream of a Lifetime in MIT's
Technology Review, August 2005]. In it he mentions: By 1967, MTS was up and running on the newly arrived 360/67, supporting 30 to 40 simultaneous users. ... By the time I arrived as an undergraduate at the University of Michigan in 1971, MTS and Merit were successful and stable systems. By that point, a multiprocessor system running MTS could support a hundred simultaneous interactive users, ... But he doesn't happen to mention anything about editors or visual mode. My memory of his connection to MTS's visual-mode could very well be wrong, since I didn't come along until after visual-mode already existed. I just remember his name coming up in later discussions. However, I also think there was someone named Victor who was part of the story of 3270 support in MTS. And Dave Twyver at University of British Columbia was the guy who wrote the 3270 DSR (Device Support Routine), as mentioned on the page at: http://mtswiki.westwood-tech.com/mtswiki-index.php/Dave%20Twyver In any case, I *am* sure that MTS had a visual editor in December of 1975, which puts before vi if vi started in 1976. Unfortunately, all of the documentation of MTS lived in the EBCDIC world, and pretty much disappeared when MTS did (in the late 1990's). -- Garance Alistair Drosehn Senior Systems Programmer Rensselaer Polytechnic Institute

[Viktors Berstis rewrote the Edit CLS and introduced the Visual sub-command. Bill Joy worked at the U-M Computing Center during this same period of time, but as far as I know, didn't work on the Editor. There were earlier visual, screen, or cursor based editors before either the MTS Editor's visual command or Unix vi. -Jeff Ogden, December 2013]