2 ms·
All reasonably effective ways of doing this involve hacking ugly special case into compiler and evaluator. But as purely academic exercise this can be done (for
by dfox 17y ago
All reasonably effective ways of doing this involve hacking ugly special case into compiler and evaluator. But as purely academic exercise this can be done (for common lisp) by handling undefined-function condition and invoking appropriate restart (which is unfortunately implementation-specific).
- mahmud 17y agoWhy? I already wrote the stub code for this in another reply. He just needs a define-deconstructor macro. Any C[A|D]+R function that isn't already defined by CL can be defined as a macro. [Edit: I see that he said any call .. well, he will have to define the function before hand before he calls it. That's just common sense. Apologies dfox.]