On Mon, Apr 19, 2021 at 09:37:52PM -0500, polifemo wrote:
> This, of course, requires some global variable *Function that saves the
> last symbol defined by 'de. Is there such a variable? Or is there a way to
> change 'de to write to that variable?

Yes. It is a bit tricky because 'de' must be redefined (with 'def')
while it is used.

Directly using (de de ...) gives a "redefined" warning, so i would use 'undef'
first:

   : (private) Args

   : ((undef 'de) de Args
      (def
         (setq *Function (car Args))
         (cdr Args) ) )
   -> de

   : (pp 'de)
   (de de priv~Args
      (def (setq *Function (car priv~Args)) (cdr priv~Args)) )
   -> de

   : (de f (A) (inc A))
   -> f

   : (pp 'f)
   (de f (A)
      (inc A) )
   -> f

   : *Function
   -> f

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to