3 ms·
> outweigh the niceties that other lisps provide. But don’t people only use Emacs Lisp to program Emacs?
by TerrifiedMouse 3y ago
> outweigh the niceties that other lisps provide.
But don’t people only use Emacs Lisp to program Emacs?
- tadfisher 3y agoWhy would you need to program anything else?
- _pvxk 3y agoWell, being an Operating System, there have been many things programmed "in Emacs": * email, slack and reddit clients * web wowser * tetris * Amazon's customer service handling https://tess.oconnor.cx/2006/03/quality-without-a-name https://tess.oconnor.cx/2006/03/quality-without-a-name (not sure what that says about Emacs Lisp. Or Amazon.) * PIM / OCD management software * video editing https://www.nongnu.org/gneve/ https://www.nongnu.org/gneve/ * mind control https://github.com/jonnay/mindwave-emacs https://github.com/jonnay/mindwave-emacs * Thermonuclear word processor * vim and vi emulators, if you ever need to use it for coding * Internet of Toys https://news.ycombinator.com/item?id=29207607 https://news.ycombinator.com/item?id=29207607 * Air traffic control system https://news.ycombinator.com/item?id=33524683 https://news.ycombinator.com/item?id=33524683
- BaculumMeumEst 3y agoyes, and the real-world impact of what they make is greater than what is produced with any other lisp
- owl57 3y agoI suspect there's an obscure system in Common Lisp or even one of its ancestors running something absolutely critical to the world as we know it.
- cmrdporcupine 3y agoYes, the backend for Google Flights, Orbitz, Kayak etc. That seems rather critical. While it's not clear to me how much of that backend is still in Common Lisp, when Google bought ITA Software it was primarily a Lisp shop and I understand that it largely stayed that way for at least a long time.
- owl57 3y ago> it's not clear to me how much of that backend is still in Common Lisp Yes, that's why "suspect" and "obscure": I thought that well-known system is already rewritten in Google's usual languages. Turns out it isn't publicly known (?), but plausible: Google isn't afraid to rewrite their software whenever they find legacy hard to maintain, I even heard of a project that got rewritten 5 times in ~10 years.
- bitwize 3y agoAt the time of the ITA acquisition, Google had a strict four-language policy: C++, Java, JavaScript, or Python. Nothing else was allowed. The ITA acquisition made them rethink that a little bit, as they noticed that all the smart people working on QPX, the kind of people Google wanted to keep more of around, really loved Lisp and had built something great in it. And then Go came on the scene and Dart and... well, so much for the four-language rule. QPX defied bitwize's Corollary to Greenspun's Tenth Rule: "Any sufficiently complicated Common Lisp or Scheme program will eventually be rewritten in C++, Java, or Python." (These days I would add JavaScript, TypeScript, and Rust.) It was still being maintained in Lisp as of the late 2010s and probably still is today. If Google ordered a Big Rewrite of QPX in another more marketable programming language, they risk losing the good people who worked on it to begin with. So... maybe next decade.
- fiddlerwoaroof 3y agoI think they tried to rewrite it in C++ and failed, so it’s still mostly in CL last I heard. I think they have an internally-maintained fork of sbcl and a core maintainer of sbcl on payroll.
- natrys 3y agoPeople use Emacs for anything and everything, so by extension they write elisp for all kinds of things too. Any why not tbh? It's a general purpose language that's arguably no worse than python or ruby (subjectively more fun for me instead). Yes in specific cases like data science or web backend/frontend you should prefer something else, but everyday text processing, scripting is elisp's forte, so given that it's like a cross platform VM that's always there it makes a lot of sense to use it as general purpose tech to marry logic with ergonomic frontend inside Emacs.