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


    Date: Tue, 8 Dec 87 12:47 EST
    From: Kent M Pitman <KMP@STONY-BROOK.SCRC.Symbolics.COM>

        Several members of the committee feel that the increased functionality
        outweighs the damage to the definition of :KEY.  No one has objected
        to this change in the recent round of discussions.
    There is no "definition" of :KEY. At best, it's an unwritten rule. It's arguably
    just a coincidence. Anyway, the general sentiment of this paragraph is right,
    but it should be worded more carefully so that it doesn't set a precedent for
    "unwritten rules" having to be too strongly justified.

To quote from CLtL page 246: "If an operation tests elements of a
sequence in any manner, the keyword argument :KEY, if not NIL, should
be function of one argument that will extract from an element the part
to be tested in place of the whole element."

This seems like a definition of :KEY to me, though I will cheerfully
agree that it doesn't specify that this is the only legal meaning of


	Change the definition of REDUCE to take a :KEY keyword.

    This needs to be more elaborated. You need to say what the :KEY keyword will do.
    The proposal part of these write-ups is intended to stand on its own.

The text on page 246 is also the only place that :KEY is documented in
CLtL.  However, I agree that a full description should be here both
because this is a slightly different use of :KEY and because our
standard document is likely to be more verbose than CLtL.