[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Thanks for CScheme; I like it

I would like to second this motion. I am the manager of the group that
has developed Butterfly Lisp, for the BBN Butterfly multiprocessor.
Butterfly Lisp is based on CScheme and we have worked closely with the
software and with the people who built it for about 3 years now. 

Of course the system has its flaws (though just what they are is
itself debatable), many of which I attribute to its unusual history:
beginning life in silicon, and moving to machine code and then to C
(I'll leave it to others to decide whether this represents progress).
I consider none of the "flaws" fatal -- they mostly just hair up the
interpreter a bit (e.g., the s-code abstraction, which I suspect would
not reappear if the system were being designed today for
implementation in software, with a native-code compiler, rather than
as an interpreter implemented directly in hardware).

On the whole, however, we have found the system to be quality
software, designed and implemented with care, and robust and highly
functional in use. With the advent of the compiler, performance is
beginning to approach that of fast Lisp/Scheme implementations (such
as T/Orbit), and where it doesn't, the problems are understood and in
the process of being fixed (mostly open-coding of arithmetic
operations). I do not believe that the performance issues that tend to
get flamed about (high-tag, passing args on the stack) will amount to
as much (on 680x0-based hardware) as some people seem to believe -- as
Chris mentioned, this belief is supported, in part, by experiment and
measurement, not conjecture.

And speaking of flames, I would like to register my vote for basic
civility in our discussions -- questions were raised here that would
have been a lot more fun to debate if the initial messages had been
less acrimonious.

/Don Allen