Hi Alan,
On Thu, Jan 7, 2010 at 12:02 AM, Alan Ruttenberg alanruttenberg@gmail.com wrote:
The error turned out to be in PRECOMPILE-LAMBDA and PRECOMPILE-NAMED-LAMBDA. Committed the fix in r12340 in trunk. This will be in 0.18.
I think it would be a good idea to extend your inline-lambda-rewriter to be able to parse/rewrite all lambda lists, not only the ones with &rest arguments (did I see correctly that you restricted to that case?).
I did, for expediency. I don't know whether it will be worth doing it for all lambda lists, and full lambda list processing is complicated. I know that my code was using these forms - it might be worth seeing whether there are any uses of more complicated forms. At some point the additional cost of doing the lambda list processing relative to the extra function call might not be worth it.
But doesn't DESTRUCTURING-BIND already give us lambda-list processing for "free"? I mean, it's too lenient with processing the lambda list because it will allow all kinds of forms ordinary lambda lists won't allow, but it definitely parses them.
Don't mind doing a bit more on it if there are known cases that would benefit.
I don't know which software uses this a lot, but I think it's just very nice to support the general case, if there's support to be written anyway.
Bye,
Erik.