Hi!

I noticed the 'daemon function does a fine job distinguishing builtin
C functions from lisp functions. However, it redefines the function to
evaluate all arguments, rather than letting the function decide for
itself. Here is an example transcript:

: (setq a 3)
-> 3
: (while (gt0 (dec 'a)) (prinl @))
2
1
-> 1
: (daemon 'while (prinl "while called"))
-> (@ (prinl "while called") (pass $268284695))
: (setq a 3)
-> 3
: (while (gt0 (dec 'a)) (prinl @))
3
while called
# infinite loop
-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to