From: Evans Winner <thorne@unm.edu>
To: help-gnu-emacs@gnu.org
Subject: Re: About Emacs Modernisation Project
Date: Tue, 01 Jun 2010 23:58:43 -0600 [thread overview]
Message-ID: <87zkze5624.fsf@unm.edu> (raw)
In-Reply-To: 87typmtjej.fsf@kuiper.lan.informatimago.com
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
next prev parent reply other threads:[~2010-06-02 5:58 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <143c6d28-4423-4e43-9fc5-c0fb3340043b@c11g2000vbe.googlegroups.com>
2010-05-31 15:44 ` About Emacs Modernisation Project Pascal J. Bourguignon
[not found] ` <0e994fe3-6dde-449f-879d-6701c7a195a9@e28g2000vbd.googlegroups.com>
2010-05-31 19:41 ` Alessandro Piras
[not found] ` <87iq63wsvt.fsf@kuiper.lan.informatimago.com>
2010-06-01 0:06 ` LanX
2010-06-01 8:44 ` Pascal J. Bourguignon
2010-06-01 11:19 ` LanX
2010-06-01 12:56 ` Pascal J. Bourguignon
2010-06-02 6:17 ` Xah Lee
[not found] ` <c41c63c0-b934-442d-8385-1abff6ab9b0b@s41g2000vba.googlegroups.com>
2010-06-01 0:40 ` Alessandro Piras
2010-06-02 6:07 ` Xah Lee
[not found] ` <87ljazofkn.fsf@rapttech.com.au>
2010-05-31 23:33 ` LanX
2010-06-01 10:28 ` Helmut Eller
2010-06-01 11:27 ` LanX
2010-06-01 12:29 ` Helmut Eller
2010-06-01 12:55 ` LanX
2010-06-01 12:59 ` Pascal J. Bourguignon
2010-06-01 12:59 ` Pascal J. Bourguignon
2010-06-02 17:05 ` Xah Lee
2010-06-02 17:50 ` Helmut Eller
[not found] ` <87r5krh3e0.fsf@unm.edu>
2010-06-01 8:40 ` Pascal J. Bourguignon
2010-06-01 17:34 ` rustom
2010-06-02 12:47 ` B. T. Raven
2010-06-02 17:20 ` rustom
2010-06-01 19:50 ` Stefan Monnier
2010-06-01 23:22 ` LanX
[not found] ` <slrni0b8nm.9k6.bergv@u00.math.uiuc.edu>
2010-06-02 11:39 ` Pascal J. Bourguignon
[not found] ` <e73e123d-3f0c-4a6f-bbac-b91fb71bf07d@f14g2000vbn.googlegroups.com>
2010-06-03 9:26 ` Emulating namespaces Pascal J. Bourguignon
2010-06-03 15:33 ` LanX
2010-06-03 17:41 ` Pascal J. Bourguignon
[not found] ` <87mxvegz12.fsf@unm.edu>
2010-06-01 23:36 ` About Emacs Modernisation Project Pascal J. Bourguignon
2010-06-02 5:58 ` Evans Winner [this message]
2010-06-04 18:33 ` Joseph Brenner
2010-06-05 2:55 ` Tim X
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87zkze5624.fsf@unm.edu \
--to=thorne@unm.edu \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.