[pro] why :key arguments?

Alessio Stalla alessiostalla at gmail.com
Mon Jul 4 13:11:30 UTC 2011


On Mon, Jul 4, 2011 at 3:09 PM, Pascal J. Bourguignon
<pjb at informatimago.com> wrote:
> Nikodemus Siivola <nikodemus at random-state.net>
> writes:
>
>> On 4 July 2011 14:46, Stas Boukarev <stassats at gmail.com> wrote:
>>
>>> * They can't be used with APPLY or FUNCALL.
>>
>> Actually, they can be used with FUNCALL.
>>
>> (Otherwise, I echo pretty much everything that Stas said.)
>>
>> Compiler-macros are, however, of decent tool for optimizing common
>> cases of :KEY and :TEST arguments.
>
> Remember however, that you cannot write in a conforming program a
> compiler macro for a function named in the CL package.
>
> clhs define-compiler-macro: "The consequences of writing a compiler
> macro definition for a function in the COMMON-LISP package are
> undefined;"

You, the user, can't, but Nikodemus, the implementer, can! ;)




More information about the pro mailing list