nvi for serious hacking

Danny Braniss danny at cs.huji.ac.il
Wed Oct 19 01:47:21 PDT 2005


> At 1:25 PM -0600 10/17/05, M. Warner Losh wrote:
> >In message: <20051017003501.GB41769 at thought.org>
> >             Gary Kline <kline at tao.thought.org> 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.  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).
> 

In my case, the first visual editor that worked under Unix
was DED from the Australian Distro. it only worked on a VT100, but that's
was what i had :-), then came emacs, so im one of the few that doesn't
know vi.

	danny




More information about the freebsd-questions mailing list