2018-02-12 Buttery Smooth Emacs

This is the best blog post about Emacs in a long time. I’m still laughing. Buttery Smooth Emacs, Friday, October 28, 2016.

«GNU Emacs is an old-school C program emulating a 1980s Symbolics Lisp Machine emulating an old-fashioned Motif-style Xt toolkit emulating a 1970s text terminal emulating a 1960s teletype.»

«Emacs organizes its view of the outside world into frames (what the rest of the world calls “windows”), windows (which the rest of the world calls “panes”), and buffers (which the rest of the world calls “documents”).»

«Did Emacs just adapt to whatever these non-Xt toolkits did? Did Emacs adopt modern best practices? GTK+ is a modern GUI library. Emacs supports GTK+. Is Emacs a well-behaved GTK+ program now?»

«What’s particularly hilarious is that SIGIO can happen in the middle of redisplay. The REPL loop (in the Emacs case, not Read Eval Print, but Read Eval WTF) can be recursive.»

No, really. This blog post just keeps on giving.

(I don’t get why people use Facebook as their blog but whatever, this blog post is great.)



It’s a great write-up, but this isn’t right: “...a 1980s Symbolics Lisp Machine emulating an old-fashioned Motif-style Xt toolkit....” Symbolics certainly didn’t get its window system ideas from Xt.

Arthur A. Gleckler 2018-02-13 01:25 UTC

I’d be surprised if everything else is right! :)

– Alex Schroeder 2018-02-13 07:08 UTC

More tales from redisplay.

AlokSingh 2018-02-14 06:39 UTC

The joy of CTRL S and CTRL Q! «It is also a great tragedy that you don’t get DSR/DTR lines on these “modern” serial ports, which means you have to use inline XON/XOFF flow control. Like an animal.»

Good stuff, thanks Alok!

– Alex Schroeder 2018-02-14 13:12 UTC

Please make sure you contribute only your own work, or work licensed under the GNU Free Documentation License. Note: in order to facilitate peer review and fight vandalism, we will store your IP number for a number of days. See Privacy Policy for more information. See Info for text formatting rules. You can edit the comment page if you need to fix typos. You can subscribe to new comments by email without leaving a comment.

To save this page you must answer this question:

Just say HELLO