[Openmcl-devel] Naming anonymous functions
Anton Vodonosov
avodonosov at yandex.ru
Sun Mar 2 06:04:55 PST 2014
Sorry for annoyng the list with repeated proposals
of alexandria:named-lambda (I wanted
to ensure this approach is not rejected
by misunderstanding)
Now I see that Ron most likely doesn't have
an easy way to change the code which creates
the lambdas, hence creating named lambdas
is not possible.
Best regards,
- Anton
02.03.2014, 16:16, "Gary Byers" <gb at clozure.com>:
> On Sun, 2 Mar 2014, Anton Vodonosov wrote:
>
>> CL-USER> (ccl::lfun-name (alexandria:named-lambda zu ()))
>> ZU
>
> Ron already explained that he wasn't asking how to create functions
> with a specified name and was asking how to give names to functions
> that were anonymous when they were created. Gail explained how to do
> what Ron asked about. I assume that most interested parties get this
> by now.
>
> You're absolutely right (AFAICT) that ALEXANDRIA:NAMED-LAMBDA creates
> functions with a specified name. If someone has asked how to do this,
> your answer would be both correct and useful.
>
> If someone asks how warm it is outside and I say "according to my
> watch, it's 4:14 AM", I've provided a correct answer to a question
> that no one asked. We're all guilty of doing things like this
> from time to time; I don't know how to avoid that.
>
> If it's pointed out that we're answering a question that wasn't asked,
> we could either:
>
> 1) Try to determine the current temperature or admit that we don't
> know that.
> 2) Continue to insist that the time was 4:14 AM, or that
> ALEXANDRIA:NAMED-LAMBDA creates named functions.
>
> I'm sure that we're all guilty of (2) as well, but we can do
> something about this: the things that we can do include listening
> more carefully and thinking more clearly. Please do those things
> as soon as possible so that this conversation can die an honorable
> death and we won't have to watch it lurching around violently like
> something from a bad zombie movie ...
>
> [For the terminally curiousL: many, many years ago, there were 3 types
> of functions in what eventually became CCL. If I remember correctly:
>
> CFUNs were implemented in C
> SFUNs were interpreted functions
> LFUNs were implemented by code produced by that newfangled compiler thing
>
> This is something like having 3 kinda of CONS cells.
>
> It took a long time for the other two categories to disappear, but
> LFUNs ("Lisp functions") survived. This is relevant (to the extent
> that it is) in that some code that remains in CCL refers to functions
> as "lfuns", and there are still internal functions like
> #'CCL::LFUN-NAME.]
More information about the Openmcl-devel
mailing list