The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Jon Steinhart <jon@fourwinds.com>
To: The Eunuchs Hysterical Society <tuhs@tuhs.org>
Subject: Re: [TUHS] screen editors and beyond
Date: Thu, 09 Jan 2020 09:45:26 -0800	[thread overview]
Message-ID: <202001091745.009HjQ3L507739@darkstar.fourwinds.com> (raw)
In-Reply-To: <CANCZdfqDSQanoCT9f3RFR7mCC0bk0hJkqe=jt=ncgwFu__UUGA@mail.gmail.com>

Warner Losh writes:
>
> I chose emacs because of muscle memory (Both the VAX and TOPS-20 machines
> at school had emacs as the default editor) and also because it lets me
> program better. I didn't let the fact it accomplished that by trying to be
> an OS or LISP-M or whatever get in the way of using the best tool for the
> job. In the 90s this meant that I had to be careful about the machines I
> used it on. These days, it just doesn't matter. Mostly, though, it was
> finger muscle memory :)
>
> Warner

That's a great reason.  I never did any bodybuilding with emacs so I have
different muscle memory.

There is another reason why I stayed away from emacs which is that I was
running projects at the time - I had graduated from being an individual
contributor.  The multiple versions of emacs got in the way.  We had too
many instances where one person would ask another person for help or to
review something, but people using different tools interfered with the
ability of people to walk over to another terminal and get stuff done.

Because of this, I made and enforced a rule that said that one could only 
use shell aliases if they didn't redefine any existing commands.  It was
important for people to be able to work together.  Things were getting
so flexible that it was as if everybody had their own custom power outlets at
their desks preventing any other group member from coming over and plugging
something in.

Taking this in a different direction, one of the other rules that I enforced
was "don't redefine the programming language."  This is in my mind right now
as I try to navigate the linux kernel.  Someone obviously didn't like C and
made a bunch of overly complicated constructs via macros to change it to
something else generating bad code in the process.  It reminded me of the
first time that I ran across this, which was the Bourne shell in C redefined
as Algol.  I recently asked Steve about why he did this and he did give me
an answer which he said I couldn't share until he refined it.  He probably
forgot over the holidays but since I think he's on this list maybe he'll
weigh in.

One amusing thing that Steve told me which I think I can share is why the
symmetry of case-esac, if-fi was broken with with do-done; it was because
the od command existed so do-od wouldn't work!

Jon

  reply	other threads:[~2020-01-09 17:45 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-08  9:46 [TUHS] screen editors Rudi Blom
2020-01-08 14:15 ` Chet Ramey
2020-01-08 15:15   ` Steffen Nurpmeso
2020-01-08 15:42     ` Steve Mynott
     [not found]     ` <68b3d6df-94f6-625d-39bf-6149b4c177c9@andrewnesbit.org>
2020-01-08 20:56       ` Steffen Nurpmeso
2020-01-08 23:21   ` Dave Horsfall
2020-01-09  0:08     ` Warner Losh
2020-01-09  1:28       ` Larry McVoy
2020-01-09  1:40         ` Bakul Shah
2020-01-09  2:04           ` Clem Cole
2020-01-09  2:07             ` Larry McVoy
2020-01-09  2:12               ` Clem Cole
2020-01-09  2:59                 ` Bakul Shah
2020-01-09  3:08                   ` Larry McVoy
2020-01-09  3:43                     ` Bakul Shah
2020-01-09  3:27                 ` Mary Ann Horton
2020-01-09  3:34                   ` Larry McVoy
2020-01-09  3:49                   ` Bakul Shah
2020-01-09  3:55                     ` Mary Ann Horton
2020-01-09  5:27                       ` Bakul Shah
2020-01-09  4:23                 ` Jon Steinhart
2020-01-09 15:54                   ` Clem Cole
2020-01-09 17:21                     ` Jon Steinhart
2020-01-09 17:30                       ` Warner Losh
2020-01-09 17:45                         ` Jon Steinhart [this message]
2020-01-09 17:56                       ` Bakul Shah
2020-01-18  2:11                         ` Michael Parson
2020-01-09 18:53                       ` Larry McVoy
2020-01-09 19:01                         ` Jon Steinhart
2020-01-09 19:02                     ` Steffen Nurpmeso
2020-01-09 19:19                       ` Steffen Nurpmeso
2020-01-09 20:20                     ` Mary Ann Horton
2020-01-18  2:06                   ` Michael Parson
2020-01-18  3:13                     ` Clem Cole
2020-01-18  3:44                       ` Kurt H Maier
2020-01-18 15:37                       ` Larry McVoy
2020-01-18 22:11                         ` markus schnalke
2020-01-09  2:14         ` Greg 'groggy' Lehey
2020-01-09  2:48           ` Chet Ramey
2020-01-09  9:05       ` Thomas Paulsen
2020-01-08 15:11 ` Nemo Nusquam
2020-01-08 15:37   ` Henry Bent
2020-01-18 14:22   ` Michael Parson
2020-01-09 21:53 [TUHS] screen editors and beyond Norman Wilson
2020-01-09 21:55 ` Richard Salz
2020-01-09 22:01 ` Clem Cole
2020-01-10  1:52   ` Rob Pike
2020-01-10 12:26     ` Andrew Luke Nesbit
2020-01-10 13:15       ` Mark van Atten
2020-01-10 20:32       ` Rob Pike

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202001091745.009HjQ3L507739@darkstar.fourwinds.com \
    --to=jon@fourwinds.com \
    --cc=tuhs@tuhs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).