[TUHS] My EuroBSDcon talk (preview for commentary)

George Michaelson ggm at algebras.org
Mon Sep 16 12:05:24 AEST 2019


The "block copy in an editor" thing is something which has intrigued
me for years. poor old ed/ex/vi just couldn't do it, and for the life
of me, I could not understand why this was "deprecated" by the people
writing that family of editors. I seem to recall the various
lightweight emacs which proceeded GNU had it, in some cases, and GNU
had it. (Goslings emacs?)

It was pretty much "you could do this with awk or sed" or "I wrote a
SPITBAL program to do that" for most things. -As if columnar state, or
a region of a screen was not something it even made sense to pick up
into a buffer and put down somewhere else.

Later on I theorised that the internal edit sequence log structure
might make this quite hard to conceptualise and implement. But, I
think its also possible the editor authors in question just didn't see
a use value for this up-front.

I think anyone who used WordStar or a half-duplex terminal saw a
potential use for this almost immediately. And, the people using the
early newspaper edit terminals almost certainly had a use for it
because even at low-charcount they routinely seemed to work in
newspaper columns, and so a "story" was about columnar paragraph
structured data.

Similarly the 'repeat this sequence of commands' thing which emacs
had, as a "start keystroke" <do things> "end keystroke" and then @run
that thing. Yes you could @run VI buffers, but you had to program them
into a state, you couldn't tell the editor to "watch what you did, and
re-do it on successive lines"

I also suspect, that "do the thing you just did" and "block copy" were
a bit low: people who did these kind of things were not clever. Clever
people held the state of the lines in their head, and were mentally
writing the ed/ex/vi or Teco sequences to change the letters in a
line. Dumb people like me were thinking of editing as "cut the words
out with rounded -end scissors and ask mummy for the clag gluepaste"

Many fine hours were spent doing rote edits to fix post-formatted
NROFF and RUNOFF text by me. Dumb, but doable.

(runoff on the Dec-10 was good. I am glad I'd done it, it made the
transition to nroff far easier. I didn't realize it was a cross-port
from CTSS)

-G

On Mon, Sep 16, 2019 at 11:52 AM Clem cole <clemc at ccc.com> wrote:
>
> Fair enough.  But the original v6 Whitesmiths Idris was important and should be part of your v6 slide.    It establishes that some people were beginning to take a commercial version of Unix seriously even if AT&T was not allowed too.
>
> Sent from my PDP-7 Running UNIX V0 expect things to be almost but not quite.
>
> On Sep 15, 2019, at 9:42 PM, Warner Losh <imp at bsdimp.com> wrote:
>
>
>
> On Mon, Sep 16, 2019, 12:25 AM Bakul Shah <bakul at bitblocks.com> wrote:
>>
>> On Sun, 15 Sep 2019 17:46:42 -0400 Clem Cole <clemc at ccc.com> wrote:
>> >
>> > The first UNIX clone that I know about was a V6 version by Whitesmiths,
>> > called Idris, I want to say in 1977/78.   I believe that Michel's Gien's
>> > Pascal clone that he talked about a year later started out as V6, but
>> > morphed to V7 before he was done (and then later morphed again to become
>> > Chorus in a C++ rewrote).  Mike Malcolm's Thoth (which "Thucks" by the way,
>> > my wife threw out my tee-shirt years ago;-) was a pseudo V6 clone.   I
>>
>> Acc. to a paper[1] by Cheriton, Malcom and Melen did the
>> original small run time executive called Thoth. Cheriton
>> rewrote it to form the kernel of the system described in the
>> Feb 1979 CACM article. It used memory mapping, swapping. etc.
>> They also added a filesystem.
>
>
>
> Cataloguing all the clones was out of scope for my talk... there are a huge number that are known, and many more that aren't...
>
> I likely could do a whole talk on just that...
>
> Warner
>
>
>> Thoth could not have been a clone of v6.  It used message
>> passing. More RPC than pipes. And it had "teams", where a
>> "team" is roughly the same as a Unix process (separate address
>> space) and a Thoth "process" was a thread in that address
>> space.  root was "*" (instead of "/") and current dir was "@"
>> (instead ".").  A bigger difference was that it had *nodes* or
>> files and any file can have sub nodes.  There was no
>> separation between files and directories.
>>
>> It was an interesting system and a lot of different things
>> were tried in it. In 1980-81 timeframe AMD forked off a
>> separate company called AMC to build microcomputers. They
>> chose Thoth.  I almost worked there but in the end decided I'd
>> rather do unix and joined Fortune and soon after AMD came to
>> its senses and shut AMC down.
>>
>> [1] https://cs.uwaterloo.ca/research/tr/1979/CS-79-19.pdf
>>
>> > As I mentioned before the first commercial user of UNIX was Rand
>> > Corporation in LA.  Al Arms of AT&T legal wrote the original $15K/CPU
>> > license for them.   I don't know how many of those licenses were made
>> > available, but I've always been under the impression it was under 10.  Like
>> > a lot of people at the time, this was when the 'glass tty' was just showing
>> > up in force and Rand updated/wrote a version of ed(1) called the rand(1)
>> > editor [IIRC, its still available as the 'grand editor' from Dave Yost].
>>
>> The Rand editor e had nothing in common with ed(1).  e
>> descended from NED, a 2D editor, invented by Ned Irons in 1967
>> and described in "A CRT editing system" CACM Jan 1972.
>>
>> The "Grand editor", derived from e19 is long gone. Even Dave
>> gave up on it long ago.  Though you can find a separate
>> version on the 'Net, also derived from e19.  e with its
>> multiple windows was a joy to use on a 60 line Ann Arbor
>> Ambassador terminal. I use acme because it too is a tiling
>> editor like e. It has some goodies not in e but overall e
>> was a better experience.
>>
>> http://www.bitsavers.org/pdf/rand/R-2176-ARPA_The_CRT_Text_Editor_NED_Dec77.pdf


More information about the TUHS mailing list