[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
What are we talking about?
I think the situations are very different. In the object-oriented game,
we as a group (and some of us as individuals) don't really know what we
want yet. The idea of putting in a minimal and general set of hooks is
to let a thousand flowers bloom, so that we can all get some experience
with the different possibilities and then, maybe, someday, reach a
consensus on what we all like.
Subsets are different. In the language as currently defined in the
white pages, we deliberately put in a lot of high-level stuff that could
have been defined in terms of more primitive constructs precisely
because we did not want a thousand flowers to bloom. Things made it
into the white pages whenever we felt confident that a large number of
users would want them and that we understood these things well enough to
know that the facility as provided is about as good as any other way of
doing it. In these cases, leaving the decision unbound would just
promote incompatibility, not useful diversity.
Of course, anyone implementing a Common Lisp would be foolish to ignore
the fact that some of these things can be defined in terms of others.
In fact, we provide public-domain code for an awful lot of these things,
and any very tiny system could either auto-load just what it needs or
could purge whatever it doesn't need at system-delivery time. Very
little has to be implemented by hand as the lowest-level support.