Lisp Programer Daniel Weinreb Died (1959 – 2012)
Daniel Weinreb died today. Cancer. Aged 53. (1959 – 2012-09-07).
The first news post that broke the story seems to be
Daniel sometimes posts in comp.lang.lisp newsgroup. Since about 2007, i became acquainted with him, because he responded to some of my lisp criticisms. Subsequently i learned of his status in the lisp community. Later have exchanged a couple email with him. I didn't know he had cancer. Don't think he ever blogged about his illness.
Daniel Weinreb used Emacs before Richard Stallman, and is a co-founder of Symbolics, a lisp company during 1980s.
He told me about how emacs keybinding started.
From: Daniel Weinreb 〔d...@alum.mit.edu〕 User-Agent: Thunderbird 188.8.131.52 (Windows/20080421) Newsgroups: comp.emacs,comp.lang.lisp Subject: Re: effective emacs xah...@gmail.com wrote: │ Effective Emacs │ │ (Long term emacs productivity tips.) │ │ Xah Lee, 2008-05-29 │ │ I have used emacs daily since 1998. Typically, i spent several hours │ inside emacs, everyday, for the past 10 years. Same for me, except the year is 1977. Nobody has been using Emacs longer than I have (I was one of the original beta-testers. I refer here to the original Emacs, written in ITS TECO for the DEC 10.) │ Emacs's default cursor moving shortcuts are “Ctrl+f”, “Ctrl+b”, “Ctrl │ +n”, “Ctrl+p”. The keys f, b, n, p are scattered around the keyboard │ and are not under the home row. That's true. At the time Guy Steele put together the Emacs default key mappings, many people in the target user community (about 20 people at MIT!) were already using these key bindings. It would have been hard to get the new Emacs bindings accepted by the community if they differed for such basic commands. As you point out, anyone using Emacs can very easily change this based on their own ergonomic preferences. │ GOOD │ Microsoft Natural Multimedia keyboard Let me put in a quick plug for my own favorite keyboard, which I am using right now: the Unicomp Customizer: http://pckeyboards.stores.yahoo.net/customizer.html I like the feel of the keys very much. I agree with you that it's important, and worth some effort, for everyone to find a keyboard that they feel most comfortable with. │ Problem and Why Emacs's Keyboard Shortcuts Are Painful. I generally make few customizations to the key bindings, so that when I work with another programmer, I can turn the keyboard over to them and not cause confusion. │ Steve advices users to “Lose the UI”. I rarely use the menu bar. On the other hand, I was raised on an Emacs that didn't have a menu bar, so I could be atypical. Using the mouse to set point or set the region is great, though, and I use that a lot. Here's another piece of historical trivia. The Emacs keyboard macro feature was inspired by a similar feature in the Stanford DRAW system, an electrical CAD system widely-used by the AI lab hardware hackers at the time. It was very powerful. But if you made a mistake, it could really destroy your design, and so it was a good idea to save to disk before running it. We had a saying for what happened if you forgot to save: “A moment of convenience, a lifetime of regret.” This predates the widespread use of “Undo” functionality, surely one of the best ideas for user interfaces ever invented. -- Dan
(his fav keyboard is Unicomp, which uses IBM's Modle M's buckling spring key switch mechanism. [see Unicomp Keyboard])
Daniel is a co-founder of the lisp company Symbolics (the first Lisp Machine company.). Sometimes, you can see he speaks out on lisp history. Here's one:
[Rebuttal to Stallman's Story About The Formation of Symbolics and LMI By Daniel Weinreb. At
(local copy Daniel Weinreb Rebuttal to Stallmans Story)
Daniel also wrote a version of emacs. EINE (EINE Is Not Emacs). Here's quote from Wikipedia:
EINE (a recursive acronym standing for “EINE Is Not Emacs”) was the Emacs text editor for Lisp machines. It was developed by Daniel Weinreb and Mike McMahon in the late 1970s, with a command set the same as the original Emacs written in TECO by Richard Stallman. It would later be developed into ZWEI ( “ZWEI Was Eine Initially”), which itself would eventually become Symbolics' Zmacs (integrated into Symbolics' development for their Lisp machines, Genera). It was the second Emacs written, and the first to be written in Lisp.
(for some emacs history, see: GNU Emacs and XEmacs Schism, by Ben Wing.)
On occasion i criticized lisp's cons, Daniel gently nudged me to give detail. See: Programing Language: A Ruby Illustration of Lisp Problems • Lisp's List Problem.
Daniel Weinreb himself have criticized Common Lisp. See: Common Lisp Sucks. A more popular one is on Common Lisp's “loop”, mirrored on Paul Graham's site at [Dan Weinreb: Loop By Dan Weinreb. At http://paulgraham.com/loop.html , accessed on 2012-09-08 ].
Another popular article Dan has written is a comparison of Common Lisp implementations. [Common Lisp Implementations: A Survey By Daniel Weinreb. At http://common-lisp.net/~dlw/LispSurvey.html , accessed on 2012-09-08 ] (When he announced that on comp.lang.lisp, i recommended the page be broken to sub-pages, and other formatting issues. See: Monolithic Web Pages. He didn't take it to heart. (and i regret my rashness in putting forward my opinion))
Daniel Weinreb is also mentioned in the acknowledgement section in the infamous UNIX-HATERS Handbook. (see the PDF file at The Unix Pestilence.)
Dan's blog is at
http://danweinreb.org/blog/. Last entry is about a year ago, where he talks about learning French. (i think he was diagnosed with cancer a year ago.)
In the popular essay Worse Is Better, the MIT guy in the story, is Daniel Weinreb. See: Lisp Celebrities and Computing History from Worse Is Better.
I feel sad that Dan is gone.
Other's pages on Dan's passing:
- [Dan Weinreb died By Rainer Joswig. At
- discussion on Hacker News http://news.ycombinator.com/item?id=4490892
- Death of a LISP Troll — My Memory of Erik Naggum
- Google Tech Talk: 〈Lisp at JPL〉 by Ron Garret 📺
- Paul Graham's Infatuation with the Concept of Hacker
- Famous Programers with Repetitive Strain Injury
- Guy Steele on Parallel Programing: Get rid of cons!
- What's the Difference Between Hacker and Tech Geeker?
- Why Emacs Keys are Painful