LWN.net Logo

Advertisement

Front, Kernel, Security, Distributions, Development. See your byline here on LWN.net.

Advertise here

viper-mode

viper-mode

Posted Apr 23, 2007 19:51 UTC (Mon) by jibal (guest, #44844)
In reply to: viper-mode by ncm
Parent article: Emacs 22 on April 23

"emacs is very far from "modeless", by any definition"

There is no comparison between emacs' modes, which are explicitly specified by switching between buffers or turning modes on and off, and vi's bimodal editing where every keystroke has two radically different meanings that one is constantly switching between (if they're actually editing, and not just typing a lot of new text). emacs's modes are more akin to different programs having different menus, or different user interfaces -- operations are context-sensitive, which is perfectly reasonable. But vi's modes both operate in exactly the same context. As Bill Joy said (http://web.cecs.pdx.edu/~kirkenda/joy84.html):
"One of the good things about EMACS, though, is its programmability and the modelessness. Those are two ideas which never occurred to me."


(Log in to post comments)

viper-mode

Posted Apr 23, 2007 20:00 UTC (Mon) by jibal (guest, #44844) [Link]

Here's another quote from Bill Joy (http://www.theregister.co.uk/2003/09/11/bill_joys_greates...) that is very revealing about its design, and the appropriateness of that design to the tasks at hand:

"It was really hard to do because you've got to remember that I was trying to make it usable over a 300 baud modem. That's also the reason you have all these funny commands. It just barely worked to use a screen editor over a modem. It was just barely fast enough. A 1200 baud modem was an upgrade. 1200 baud now is pretty slow.

9600 baud is faster than you can read. 1200 baud is way slower. So the editor was optimized so that you could edit and feel productive when it was painting slower than you could think. Now that computers are so much faster than you can think, nobody understands this anymore.

The people doing Emacs were sitting in labs at MIT with what were essentially fibre-channel links to the host, in contemporary terms. They were working on a PDP-10, which was a huge machine by comparison, with infinitely fast screens.

So they could have funny commands with the screen shimmering and all that, and meanwhile, I'm sitting at home in sort of World War II surplus housing at Berkeley with a modem and a terminal that can just barely get the cursor off the bottom line.

It was a world that is now extinct. People don't know that vi was written for a world that doesn't exist anymore - unless you decide to get a satellite phone and use it to connect to the Net at 2400 baud, in which case you'll realize that the Net is not usable at 2400 baud. It used to be perfectly usable at 1200 baud. But these days you can't use the Web at 2400 baud because the ads are 24KB."

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds