| |
(Here Dan Weinreb replies to
Olin Shivers with a
description of some of the extenuating factors in the history of NIL.)
You have to take into account who their user community was. The
Macsyma people were a very large constituency. It was clear that
high-speed bignums were way up there on the priority list -- NIL with
slow bignums would be deemed a failure.
It would have helped them a lot if a lot of the people knowledgable
about Lisp implementation had not been off working on Lisp machines
instead of being part of the NIL team. They had very extensive
requirements, including "do everything that Maclisp does at least as
well as Maclisp does it", which was a tall order. The "quick and
dirty prototype" path that Jonathan took with T was not considered
suitable. (At least that's how I remember it, not that I was really
involved directly with NIL...)
By the way, while we're talking history, let me mention that it took
an *amazingly* long time for SETF to be invented. In retrospect, it's
seems so simple and obvious. But the MIT Lisp community went through
many generations of structure-macro-packages before SETF came along,
at which point it was instantly obvious to everybody that SETF was the
answer. (I'm not sure who invented it, but I'm pretty sure it was
either Dave Moon or Alan Bawden.)
And nested backquotes flummoxed all of us for quite some time. Moon
and I and Bawden had noticed that nesting backquotes just didn't work,
but we didn't understand why. Finally Bawden groked it in all its
fullness and discovered that actually it *did* work; our problem was
that we had not yet discovered the ",'," construct.
So I hope this is encouraging for newcomers: although other (very
smart) people have tramped all over the garden, it there may yet be
still-undiscovered gems hiding under that next stone.
|
|