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

Common LISP omissions: Collect, Locatives



We considered adding locatives early in the original design process, but
decided that they didn't make much sense except on machines with
hardware support for forwarding pointers.  Lisp machines can use
locatives to implement other Common Lisp constructs, but we felt that it
would be confusing to users and something of a performance trap to make
them part of the portable language, that also has to run well on stock
hardware.

As for collect, when something can be written without any special
problems in the existing language, our strategy has been to add it to
the standard only if (1) a LOT of people would otherwise end up coding
this hack for themselves and (2) a single built-in version would satisfy
all of those users.  If that kind of need can be demonstrated for
COLLECT, it should go in; if not, it should be added to the
public-domain library for those people who do want it.

Most of the critics of Common Lisp feel that we have put in too many of
these optional things already.

-- Scott