From ... From: Erik Naggum Subject: Re: Is LISP dying? Date: 1999/07/18 Message-ID: <3141322425464039@naggum.no>#1/1 X-Deja-AN: 502499088 References: <7m8bm7$dni$1@nnrp1.deja.com> <87zp14kxmp.fsf@duomo.pukka.org> <7m9qk7$8c7eg@fido.engr.sgi.com> <378B405C.C89AD7F3@ne.mediaone.net> <7mfqsd$221$1@oak.prod.itd.earthlink.net> <378CC969.EB5819B9@ne.mediaone.net> <378E20F3.5105BFD1@sophos.com> <87u2r56dt8.fsf@duomo.pukka.org> mail-copies-to: never Organization: Naggum Software; +47 8800 8879; http://www.naggum.no Newsgroups: comp.lang.lisp * rrt@persephone.joh.cam.ac.uk (Reuben Thomas) | I may just be muddying the waters, but I read Csaba's comment as meaning | that it's easier to implement Emacs in Scheme than in Lisp, and Craig's as | that it's no easier to implement Scheme than Lisp. These seem to be at | cross-purposes. of course it's easier to implement Emacs in Guile than in C, but Guile is implemented in C, which makes it much harder to implement Emacs. because any Scheme used in the real world will accumulate approximately 6 billion special-purpose functions that do very small things because Scheme does not support abstractions conveniently and nobody can agree on how to do it inconveniently, Guile will do a full circle and be approximately 360 times bigger than Common Lisp (except all the OO stuff will be glued on inefficiently, because OO is complex and Scheme is simple and elegant or so says the book, therefore the OO stuff is always too complex, so yet another attempt is always needed as soon as the last attempt approaches useful asymptotically from below), with cultural differences in naming and argument conventions and such, and then someone will come along and write a Common Lisp layer on top of everything, just like cl.el because Emacs Lisp actually sucks, but at least we know _how_ it sucks, unlike Guile, which will suck in entirely new, and much improved, ways. also, Emacs is easier to implement in Guile because it hasn't actually been done, whereas we know exactly how hard it was to do it in C and a dynamically scoped Lisp (and nobody will ever do _that_ again, which also means it's trivially easier to do it Guile, simply because someone is actually trying to do that.) and obviously, whoever thought it would be easier had ignored the fact that Guile Emacs needs to implement Emacs Lisp, too, considering the millions of lines of really crappy Emacs Lisp out there that gets run at completely random times because it has wound up in default.el and .emacs and such, having been copied all over the globe across amazingly lossy connections that each introduce a minor mistake on every copy, and equally amazingly, doesn't work at all from version to version of Emacs, or from the system admin's equally messed up changes to default.el from week to week as users complain. oh, joy! this is Emacs. this is Guile. this is Emacs on Guile. any questions? #:Erik, who thinks Guile is a bigger mistake than MULE -- @1999-07-22T00:37:33Z -- pi billion seconds since the turn of the century