It's a bug in the PicoLisp implementation with the onOff
macro.
The parameters of the onOff
function are: (onOff var ..) -> flg
It takes a var and many more variables and logically negates them (true becomes false, false becomes true). I'm willing to bet that the onOff
macro takes a single list of arguments. Which means that if NO arguments are given to it, that list of arguments is empty which means the symbol given to the function is NIL.
Macro is bolded because that's where the problem lies. Using a macro makes it so you can pass the symbols to it without quoting. So the onOff
macro is generating incorrect code.
omouse
2009-10-31 00:44:04