Hi Alex, >> is this supposed to happen? >> .. >> : (onOff) >> -> T >> : (show NIL) >> T T > > Oops, no. But if I try here: > > : (onOff) > !? (onOff) > NIL -- Protected symbol > ? > > I really don't remember, but it could well be that I "repaired" that > in the course of rewriting some parts while codig the 64-bit version.
I see, my example was with v2.3.5, your is with v2.3.7. >> (onOff sym ..) -> flg >> >> Logical negates the VAL's of all argument symbols sym. Returns the >> new value of the last symbol. >> >> - Should not the symbol names be passed explicitly? > > Yes. But on the other hand, missing arguments usually default to NIL in > picoLisp. Makes not much sense in the case of 'onOff'. I know, but it still doesn't make sense even in v2.3.7. : (onOff) is the same as : (onOff . NIL) Now using this logic, : (onOff A B) shoud be the same as: : (onOff A B . NIL) why is it trying to set NIL in the first case and not in the second one?;-) >> - Why does it return value of the last symbol? > What would you return instead? Most similar functions like 'on', 'off', > 'zero' or 'setq' do the same. Well, I thought it might be more convenient not to specify return values for some functions to allow for some optimizations but I guess it is not an issue here. Thank you, Tomas -- UNSUBSCRIBE: mailto:picol...@software-lab.de?subject=unsubscribe