У меня есть список, по которому я хочу оценить правду, но (если я не пропускаю какой-то встроенный аспект Racket / Scheme), мне нужно преобразовать его в логическое значение, чтобы сделать это.
Например, у меня есть
'(#t and #f)
Мне нужно
(function '(#t and #f)) ;in order to return...
>#f
Я пытался (eval '(and #t #f)
, но получаю это сообщение об ошибке:
and: unbound identifier;
also, no #%app syntax transformer is bound in: and
У меня есть код, который преобразует '(#t и #f) в' (и #t #f), поэтому, насколько я знаю, это не должно быть проблемой.
(define (Evaluate-WFF lst)
(match lst
((list a b c)
(list (reorg b)
(reorg a)
(reorg c)))
(_ lst)))
Когда я пытаюсь eval
из этого, я получаю сообщение об ошибке, заявленное ранее.