Hi Cle,

>   (setq "*Signals" NIL)
> 
>   (de _storeElement (@Queue)
>     (curry (@Queue) (Attributes . SubExprs)
>       (queue '@Queue Attributes)
>       NIL
>     )
>   )
> 
>   (setq strml:Signal (_storeElement "*Signals"))
                                      ^

Here lies the problem. As value of the transient symbol "*Signals" is
NIL (from the 'setq'), '@Queue' is NIL when 'curry' runs.

>   (de strml:Signal (Attributes . SubExprs)
>    (queue 'NIL Attributes)


> on the prompt type:
> 
>   : (setq strml:Signal2 (_storeElement "*Signals"))

Here you are in another 'load' environment, so "*Signals" is a new,
different symbol. That symbol's value is not set to NIL, so it is still
pointing to itself (auto-quoting of transient symbols).

The solution is simple: Just always quote the argument:

   (setq strml:Signal (_storeElement '"*Signals"))

Cheers,
- Alex
-- 
UNSUBSCRIBE: mailto:picol...@software-lab.de?subject=unsubscribe

Reply via email to