Saturday, April 9, 2011

The meta-cokebottle

Here's the weekend blog, folks - I'll be gone for two days.

Story below brought to you by Richard Lyon, father and meta-nerd....

*

My first exposure to meta, besides meta-physics, which I took to mean religion, and therefore not nearly as interesting as physics, was the meta key on keyboards at the MIT AI Artificial Intelligence lab in the late 1970s.

They had invented this moby text editor called "emacs" (according to its radical inventor rms, NOT named for the nearby Boston ice-cream shop, Emack & Bolio's, which was named for a couple of homeless guys, even if the text justifier "bolio" was so named).

Emacs used what we call "control" or "modifier" keys to control its actions; but "ctrl" was not enough--no, they also had super, meta, and hyper, not to mention front, shift, and top on their space-cadet keyboards.

Typical long-form commands were like "meta-x query replace"; here the text "query replace" is meta text, talking to the editor, not putting it into your document.

I say this like it's in the past, but half the nerds where I work (GOOGLE!) still use emacs, and they have to hit the "ESC" key since we don't have meta keys on our keyboards any more. The other half use something even worse, called "vi", but let's don't go down that meta-path.

Back in the day, proponents of both were proud of the fact that they could edit documents quickly, never needing to move their hand from the keyboard; no mouse needed, though later it was allowed.

(Sidenote: some certainly did think a mouse would be needed, and thus invented the optical mouse...)

Some of the thousand or so complex commands in emacs were jokingly referred to as control-meta-cokebottle; this made it into the "jargon file", a collection of oddities that captured the hacker meta-culture of the day. See ftp://ftp.trailing-edge.com/pub/rsx11freewarev2/rsx81b/374001/jargon.txt which seems to imply that the Stanford AI Lab had meta on their keyboards before the MIT AI Lab did.

But I digress...

My boss at the time, Lynn Conway, generally advised me to "go meta" on good ideas (to find good ideas about good ideas and such). My first attempt at that is embodied in a little paper I did, in which I tried to simplify her "simplified design rules for VLSI layout" into a pair of even simpler meta rules about how to find the rules (see it at http://www.dicklyon.com/tech/Scans/DesignRules-Lyon.pdf; there was also a color version in 1981 in Lambda magazine, a magazine named after these lambda-based design rules, speaking of going meta).

Lynn would focus on things like meta-architecture (http://ai.eecs.umich.edu/people/conway/Retrospective3.html#anchor39796), meta-level control, and such, including "the design of design methodologies." Great stuff.

So, in conclusion, go meta.

No comments:

Post a Comment