Это ошибка в реализации PicoLisp с макросом onOff
.
Параметры функции onOff
: : (onOff var ..) -> flg
Он принимает var и многие другие переменные и логически отрицает их (true становится ложным, false становится истинным).Готов поспорить, что макрос onOff
принимает один список аргументов.Это означает, что если ему не дано никаких аргументов, этот список аргументов будет пустым, что означает, что символ, данный функции, равен NIL.
Macro выделен жирным шрифтом, потому что именно в этом проблема.Использование макроса позволяет вам передавать символы без кавычек.Таким образом, макрос onOff
генерирует неправильный код.