On Mon, Sep 05, 2011 at 02:46:54PM +0200, Alexander Burger wrote: > 1. I would put these three expressions into "lib.l" > ... > (de dp "Args" > (push *Class "Args") > (let "@Msg" (car "Args") > (def "@Msg" > (curry ("@Msg") @ > (if (method '"@Msg" '"Context") > (pass @) > (quit "Not in context" '"@Msg") ) ) ) ) )
The invocation of dynamic package functions can be sped up considerably if we use 'send' directly (at the expense of a perhaps less beautiful error message): (de dp "Args" (push *Class "Args") (let "@Msg" (car "Args") (def "@Msg" (curry ("@Msg") @ (pass send '"@Msg" '"Context") ) ) ) ) Cheers, - Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe