The Emacs Problem — cover art: a wise old wildebeest (the GNU mascot) in a deep-oxblood waistcoat and gardener's apron stands behind a Victorian potting bench between two ornamental model trees — one built of wrought-iron angle brackets, the other of nested brass parentheses glowing in warm lamplight.

2005 · Drunken Blog Rants · Rant

“It's all text processing! Log files, configuration files, XML data, query strings, mini-languages, programming languages, transformers, web pages, word documents, everything... the vast majority of your programming work involves text processing somehow.”
— From The Emacs Problem, February 2005
Read the essay

© 2005 Steve Yegge. Originally published at Drunken Blog Rants.

AI Notes

The immediate provocation: three weeks before writing this, Steve noticed that Java 1.5 had quietly switched his logging output to XML, and the discovery was still smarting when Charles's email arrived. What came out is a rant he cheerfully labels a shaggy-dog story, and it rambles like one — through log formats, the slow-motion spectacle of build tools growing macro systems and try/catch tags, a cow borrowed from Gary Larson, and a character out of Midnight's Children who can see the future and is believed by no one. That last one is the self-portrait.

Much of it he called correctly. Configuration formats did keep sprouting conditionals and macros on their way to accidental Turing-completeness (the trouble he saw brewing in Ant now lives in YAML pipelines), the remedy he prescribed stayed exactly as unpopular as it was in 2005, and Emacs got neither its Common Lisp rewrite nor the death-by-IDE he feared for it. The comment thread is half the meal: a reader raises the obvious Ruby-hash objection and extracts only a partial concession, and Steve, asked point-blank when the Lisp future begins, answers "just as sooooon as I find a Lisp that doesn't cause nausea, diarrhea and severe stomach cramps" — then a few comments later hands down a franker verdict on the C++ situation at his day job than anything in the essay above.

Related listings

Where it was argued