>>>> "Hrvoje" == Hrvoje Niksic
<hniksic(a)srce.hr> writes:
Hrvoje> Common Lisp is much closer to elisp than any Scheme dialect
Hrvoje> is.
You've said that on a number of occasions, but I don't even know what
you mean. Actually, I claim this is false.
Hrvoje> Using Scheme as a primary language in XEmacs will alienate a
Hrvoje> large number of our contributors, and I, for one, do not want
Hrvoje> to see that happen.
If that is indeed so, I'm more than willing to give in. However, we
don't have any evidence for this statement yet. That's why I said we
need more discussion. It would generally be nice if people actually
took a look at both languages (or any other candidates) and posted
about their impressions and conclusions.
I personally believe a small substrate is less likely to alienate
people than a large substrate. (Hey, we're replacing Elisp by
something really cool! Hack great things with it! Contribute code!
The language reference is only slightly more than 500 pages ...)
Hrvoje> Translators or compatibility packages for elisp implemented in Scheme
Hrvoje> would of little help, except for porting old code.
You consider porting old code (several hundred thousands of lines) "of
little help"?
Hrvoje> I doubt anyone will consider using them to write new,
Hrvoje> XEmacs-specific code.
Of course not, that's why we want a substrate change in the first
place. What's your point?
Hrvoje> My second argument is that XEmacs has been going in the direction of
Hrvoje> Common Lisp for several years now. Extensions such as cl.el show that
Hrvoje> pretty clearly.
I honestly want to understand what you mean by this, but I don't.
Sure, it has made sense to write Elisp libraries with constructs
modelled like equivalent constructs in Common Lisp. It makes sense to
write Scheme libraries with those constructs as well. It would make
sense to write Common Lisp libraries to emulate Scheme constructs.
(Or ... libraries to emulate ... constructs, or ...)
However, the *language* has not changed through the evolution of
libraries. What we've been doing with Emacs Lisp is easily possible
with Scheme, or any of a number of other languages.
Sure, some people will prefer different programming idioms when they
have the full power of Scheme available. But they don't have to. I
use Scheme programming idioms when writing Elisp, for that matter.
Look at my code. If you want to use Common Lisp idioms when using
Scheme, that's absolutely fine. In fact, you can make Scheme look
almost completely like Common Lisp, if you want to. (Note that the
reverse is not generally possible, since Common Lisp is not properly
tail-recursive and does not support control abstraction.)
Hrvoje> If we want to extend elisp further, I think we should take a
Hrvoje> radical step in the same direction, rather than turn into a
Hrvoje> wholly different one.
I don't think we want to extend Elisp further, we want to replace it
by something new. The differences between Elisp and Common Lisp are
at least as great as those between Elisp and Scheme. Replacing Elisp
by Common Lisp is simply not a "radical step in the same direction,"
it's a great leap into a new one.
I claim that moving to Scheme would be moving into essentially the
same direction as Common Lisp, it's only the pragmatics and trade-offs
which are different, mainly dictated by the state of the art in
implementation technology.
Hrvoje> Suppose the impossible happens, and Erik does come in and does all the
Hrvoje> work to port XEmacs Lisp to, say, clisp. Would you quit XEmacs
Hrvoje> development?
Yes.
Hrvoje> If yes, why?
Arguing with Erik aggravates me. This is independent of the technical
merit of the content of his postings (which I generally also find
pretty low), it's just my gut-level reaction to what he writes.
Hrvoje> Now replace Erik with Bruno or Hrvoje. Do the answers change?
Absolutely.
Hrvoje> I think that you are arguing for Scheme because of personal
Hrvoje> preferences, which is perfectly natural. Your battle plan includes
Hrvoje> only Scheme-based options, and I think that no words of mine would
Hrvoje> ever convince you to consider anything else.
There must be a misunderstanding here, Hrvoje. My "battle plan" (I
assume you're referring to my Web page on the subject matter)
*specifically* includes other options. Up until the last possible
moment, it is totally independent of the language or
language substrate we'll drop in. If we do our jobs well, we can have
several extension languages to drive XEmacs.
Moreover, I've reserved Web space for arguments on Common Lisp, but
nobody has sent me anything yet to put there. I'm willing to hear
arguments, I've tried out implementations that you've suggested to me
and commented on them (and not just negatively, for that matter).
What more do you want from me to prove I'm open to arguments?
Hrvoje> This is why I think our disagreements can be only settled by a
Hrvoje> split, or by one of us leaving the development.
I don't get it Hrvoje, we've hardly started discussion on this, and
already you claim an irreconcileable split. Why?
--
Cheers =8-} Chipsy
Friede, Völkerverständigung und überhaupt blabla