>>>> "Stephen" == Stephen J Turnbull
<turnbull(a)sk.tsukuba.ac.jp> writes:
>>>> "Hrvoje" == Hrvoje Niksic
<hniksic(a)srce.hr> writes:
Hrvoje> I think both [CL and Scheme] specify
characters as
Hrvoje> strings, as you surely guessed.
Stephen> Another example: I just recalled from CLtL1 that (eq ?a ?a) need not
Stephen> be true (for efficiency reasons, they might be implemented as
Stephen> immediate operands in some machine languages). If this is still true
Stephen> under Standard CL, we have to rip out any such comparisons of
Stephen> characters. Ebola mutates and lives....
No. Although (eq #\a #\a) need not always be true, I suspect that
standard allows it to be so. We can surely make it so for XEmacs and
still be conforming. Besides, ANSI CL still has (char-equal #\a #\a) if
you really want to be portable.
Stephen> One of the advantages of the small Scheme engine is that the engine
Stephen> itself is more likely IMO to remain separately-maintainable than a
Stephen> large CL engine which will probably (IMO, again) need many small
Stephen> XEmacs-specific changes as time goes on.
While I would prefer ANSI CL, I think the maintenance of such a thing
is problematic at best. CLISP is maintained primarily by one person
(Bruno), and, perhaps 2-3 others, from looking at the mailing lists.
This is a major disadvantage. Guile, I assume, has really active
development and quite a few major contributors. This is a major plus
if you really want a separately maintained core.
As an aside, if you want to see what xemacs in lisp might look like,
take a peek at hemlock that comes with cmucl. It's a pseudo-emacs
written entirely in lisp. It's usuable, and I think some people do
use it as their editor. Hemlock is probably at the level of an 18.x
emacs, but runs on X.
Ray