From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Evans Winner Newsgroups: gmane.emacs.help Subject: Re: About Emacs Modernisation Project Date: Tue, 01 Jun 2010 23:58:43 -0600 Organization: Aioe.org NNTP Server Message-ID: <87zkze5624.fsf@unm.edu> References: <143c6d28-4423-4e43-9fc5-c0fb3340043b@c11g2000vbe.googlegroups.com> <87ljazofkn.fsf@rapttech.com.au> <04eff456-349f-4840-b0f7-d1784f6b7058@d12g2000vbr.googlegroups.com> <87r5krh3e0.fsf@unm.edu> <87mxvegz12.fsf@unm.edu> <87typmtjej.fsf@kuiper.lan.informatimago.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1291951410 27306 80.91.229.12 (10 Dec 2010 03:23:30 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 10 Dec 2010 03:23:30 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Fri Dec 10 04:23:26 2010 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1PQtZo-0004Ko-Ns for geh-help-gnu-emacs@m.gmane.org; Fri, 10 Dec 2010 04:23:26 +0100 Original-Received: from localhost ([127.0.0.1]:34539 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PQtZl-0003U0-9h for geh-help-gnu-emacs@m.gmane.org; Thu, 09 Dec 2010 22:23:17 -0500 Original-Path: usenet.stanford.edu!goblin2!goblin.stu.neva.ru!aioe.org!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 73 Original-NNTP-Posting-Host: 4xmhsRr5Aeb6D0t2Thq8sQ.user.speranza.aioe.org Original-X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 Cancel-Lock: sha1:t6voAE9s3Wl/4ZuvPsscVL9I88g= User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) Original-Xref: usenet.stanford.edu gnu.emacs.help:178554 X-Mailman-Approved-At: Thu, 09 Dec 2010 20:23:46 -0500 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:77266 Archived-At: pjb@informatimago.com (Pascal J. Bourguignon) writes: I mostly agree with you, (and I'm letting me being convinced that emacs lisp itself has some value for casual "programmers"), nonetheless it occured to be rather often that I had problems in my code because of collision of dynamic variable or function names. There is a great quote from Richard Stallman which you have probably read: Multics Emacs proved to be a great success -- programming new editing commands was so convenient that even the secretaries in [Greenberg's] office started learning how to use it. They used a manual someone had written which showed how to extend Emacs, but didn't say it was a programming. So the secretaries, who believed they couldn't do programming, weren't scared off. They read the manual, discovered they could do useful things and they learned to program.[1] To me this attribute seems to be the sine qua non of extension languages. If it isn't easy enough that people who either don't program for a living, or who do, but not in Lisp can pick up enough to be useful relatively quickly, then the language is not going to take off the way Emacs Lisp has. Common Lisp has compilers that produce code as efficient as C, so that indeed the whole emacs could be rewritten in CL instead of C+elisp. And this would allow the practical use of other user languages (such as JavaScript or Python) to program emacs, since they can be, and are implemented more efficiently in CL than in emacs lisp. Yes, that makes sense. Playing Devil's Advocate for a moment, though, I know Guile scheme is meant to run JavaScript and Emacs Lisp and, I think, TCL. But how much code really runs on it, and how much is written for it? And if someone wrote a major package of TCL code to run on Guile, how much support would it get from the Guile developers or community? I find myself thinking that the result is more likely just a dissipation of resources. Is it really better to have an Emacs that nominally supports ejacs and clpython and Common Lisp and TCL and Scheme and so on, but really is only serious about Common Lisp -- or an Emacs that really seriously supports one language: Emacs Lisp, which is powerful, mature, easy to write and read, and does what it is supposed to: text editing? I sympathize with the desire to have a better, stronger, lispier operating environment; perhaps a better answer is the approach that I think the Climacs developers have taken: not to put the mail reader and the chat client and so on into the text editor, but to put the editor in the Lisp, and let people write separate mail readers and such. With free, multi-threading, cross-platform Common Lisp environments this seems quite possible now. But if the goal is a large user base and all the advantages which that can give, then I still think that there will be a problem unless that environment provides something on the level of simplicity that Emacs Lisp provides; and in the case of Common Lisp, I don't think that will happen without a major cultural shift among CL hackers. Anyway, that's my sense of it. Footnotes: [1] Stallman, Richard. "My Lisp Experiences and the Development of GNU Emacs." http://www.gnu.org/gnu/rms-lisp.html