On Mon, Oct 16, 2017 at 3:25 PM, Alexander Burger <a...@software-lab.de> wrote:
> This is just unnecessary overhead, as 'let' is basically 'bind' (or 'use' to 
> be
> more correct) plus 'setq'. And 'X' is bound already by the function call. So 
> why
> waste time and (stack)space?

Because I thought that setq would store a value in the parameter var
"more permanently".
Something like:

  : (foo (need 3))
   (need 3)
   -> 3
  : X
  -> (need 3)  # what I expected

 I thought using a let was necessary to free X afterwards, but even
using setq, X was freed:

  : (foo (need 3))
   (need 3)
   -> 3
  : X
  -> NIL  # what really occured

My question: which mechanism frees X of the value it was setq-ed?


chri

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

Reply via email to