Re: Emacs Keybindings for early LISP keyboards and iMac BT?

Nicholas Papadonis <[email protected]> Thu, 24 Oct 2019 17:56:45 -0400
Newsgroups gmane.lisp.clisp.general
Message-ID <CAKD0t1J7KgBQwQHf+Qf7KM+df0kjC+6iapVxFKMYwpnxoe-oow@mail.gmail.com>
Thanks this does provide insight.  I was hoping to find Tom Knight, but was
unable to find his email.

To further summarize my inquiry, I'm wondering:

 o If there was any physical reason for the placement of the keys on the
early LISP keyboards?  Perhaps frequency of that particular input as a key
in editing LISP code?
 o Is there any key mapping of these LISP machine keyboards to Emacs
functions?  (Emacs had been around at that time)
 o Did the Emacs functional keybindings (M-x) for instance change over
time?  For instance did the early LISP keyboards Meta key + x, correspond
to M-x of was it different?
 o Has anyone created a similar physical mapping of the iMac Bluetooth
keyboard with above in mind from a physical to Emacs functional
perspective?

I also noted that there are arrow keys above g,h,k,l.  For instance, were
these used to move the cursor?  If so, I would argue they are better
placement then modern arrow keys and/or Alt-n Alt-p, for cursor movement.

Finally, does someone have one of these keyboards because I would love to
try one out. :)

Thanks

On Thu, Oct 24, 2019 at 5:41 PM Christopher Stacy <[email protected]> wrote:

> There is no particular relationship between modern keyboards
> such as on the Mac versus the custom keyboards.   I don't think
> the interfaces even have similar numbers of output bits (but I
> don't really know).   Functionally, the only thing one can say is
> that the idea of modifier keys like SHIFT and CONTROL started
> way before the WAITS or ITS (Knight) TV systems.   I would speculate
> that the bucky bits at SAIL were partly inspired by special-function
> shift keys on other early bespoke systems and someone noticed that
> you could generalize them, giving things like META.  The fact that these
> operating systems supported an extended character set neyond ASCII
> must have had a lot to do with that thinking and keyboard design as well.
>
> But there is no need to speculate: you can ask Tom Knight his thoughts
> about it and get the real story, and he can help point you to someone
> from SAIL.  The SAIL keyboards are even on display at a museum exhibit
> at Stanford.   The Knight system was inspired/derived from those.
> The Space Cadet keyboard was derived from the KTV one, with a kitchen
> sink approach for maximum experimental flexibility.  The Symbolics
> keyboards were refined versions: keep the keys that were actually used
> and pare it back down to sensibility.   Talk to TK.
>
> Modern keyboards by contrast are descended directly from teletype
> keyboards and everything being based on a limited character set.
> (ASCII having beaten out IBM's similar EBCDIC code.)   Look at early
> microcomputer keyboards to see this.    Apple of course was directly
> influenced by Xerox (i.e. Alto).   During the workstation era, keyboards
> picked up the MIT (really Stanford) META keys by way of hackers from
> those institutions, and especially the X Window System.
>
> I didn't quite understand your question about relating Mac keyboard
> output to Symbolics keyboards.  They both have keys, is about the only
> similarity that I am aware of.   They were connected to radically different
> computers that didn't even use the same character sets or anything.
>
> If you're wondering what all the buttons on the Space Cadet keyboard
> were for, the general answer is "nothing" and "seemed like an idea at
> the time" which is why the Symbolics keyboards are much sparser.
>
> If you're  trying to use a Mac keyboard to talk to an emulated Lisp Machine
> of some variety, you'll have to consult the emulator implementation to see
> what it can do.
>
> Don't know what "physical to functional key bindings"means.
> Key presses are from a wire matrix to some control circuit that eventualy
> produces a key-code of some  kind (some system=specific number of bits
> wide and essentially arbitrary).  Modern keyboards for Mac and PC have
> partly standardized those codes for a subset of keys (and that encoding
> scheme probably goes back to IBM PCs and perhaps historically based
> on Teleypes, but the ca 1979 microcomputers were a technological break
> point, so I don't know...although someone somewhere would better know
> wha they're talking about.)    Anyway, given a key-code, it has to get
> transmitted
> over a wire (or virtual wire bluetooth) i interface to the computer.
> Again, there
> is some kind of modern standard for that, having nothing whatsoever to do
> with historical Lisp Machine interfaces.  Then the operating system maps
> the
> key-code to completely arbitrary functionality, such as "letter A".
> Then the higher
> level software processes that input in a completely arbitrary way.
>
> If you happen to see that some codes on a Symbolics keyboard map to
> something that an Apple keyboard produces, that's an artifact of whatever
> interface circuit you're using, and it's probably a random artifact.
>
> If you're trying to figure out what to type on a Mac keyboard to
> activate functions on an emulated Lisp Machine, s I said: you need
> to consult your emulator documentation.
>
> A great deal of thought was put into the placement, size, and shape of all
> the keys on the Knight and various LispM keyboards.  You have noticed that
> someone (in the emulator or in an X Window xmodmap or whatever) has
> associated the Caps Lock key with Rubout.   That's because hackers make a
> lot of typos and we hit Rubout (the function popularly known as Backspace)
> all day long.  Why put Backspace way up out of the way on a little key?
> After all, we press it a lot more often than Enter (aka Return).
> Put it on a big fat key that's super easy to hit.
> (The real question is why CAPS LOCK is so prominent on conventional
> keyboards.  That's stupid.  But it makes a suitable physical target on
> the keyboard which can be remapped into Rubout.)
> The keyboard design is all like that.
>
> Much of it comes from someone long ago realizing that the paper control
> codes of ASCII, such as BACK-SPACE were not necessarily relevant or
> accurate for the functions on a clean-sheet interactive computer.
> For example, BACK=SPACE moves the cursor to the left.
> Should it also delete that previous character?
> Not necessarily.  Could be we're trying to overstrike or somthing to make
> an APL character or underline or something.  Printer control is not the
> same
> thing as high-level text buffer editing!
>
> The placement of CONTROL and META, and the dissociation of CONTROL
> from the ASCII notion of printer control function codes, are due to
> editors.
> (I assume it was SAIL's E, predating Emacs ,that was responsible for that.
> Not sure when TECO got "meta", but MIT TECO on the PDP=1, not 6 or 10,
> was about paper tape...ask TK or RG.)
>
> Well, I hope I said something useful for you in all that.
> I feel more like it's just Yoda saying "Control, comtrol, you must learn
> CONTROL"
> while swinging through the jungle of history.    There are better people to
> ask than me, and I doubt I quite answered your question. but there ya go.
> Feel free to ask some more!
>
>
>

_______________________________________________
clisp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/clisp-list