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

destructuring in macrolet?

The language on page 146 of CLtL clearly implies that macrolet does not support
defmacro-style arglist destructuring:

    Defmacro, unlike any other COMMON LISP construct that has a lambda-list as
    part of its syntax, provides an additional facility known as destructuring.

These seems like an oversight.  Both implementations I tried (Symbolics and
Lucid, which latter is usually fairly strict about supplying only those features
that CLtL requires) do, in fact, support destructuring in macrolet.  While any
implementation can clearly support destructuring within macro, it would be nice
if Common LISP required all implementations to do so, so that it can be used in
portable code.  I can see no reason, aesthetic or implementational, for
prohibiting it, once you accept that macrolet's going to exist at all.