Scheme 评估布尔人列表?

Scheme 评估布尔人列表?,scheme,racket,Scheme,Racket,我有一个列表,我想评估它的真实性,但是(除非我遗漏了Racket/Scheme的一些内置方面),我需要将它转换为布尔值来实现这一点 例如,我有 '(#t and #f) 我需要 (function '(#t and #f)) ;in order to return... >#f 我尝试了(eval'(和#t#f),但收到以下错误消息: and: unbound identifier; also, no #%app syntax transformer is bound in:

我有一个列表,我想评估它的真实性,但是(除非我遗漏了Racket/Scheme的一些内置方面),我需要将它转换为布尔值来实现这一点

例如,我有

'(#t and #f)
我需要

(function '(#t and #f)) ;in order to return...
>#f
我尝试了
(eval'(和#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))) 

当我尝试从此
计算
时,会收到前面所述的错误消息。

根据您使用的语言,您可能需要提供名称空间。在
#lang racket
中,这是如何做到的:

(define-namespace-anchor a)
(define ns (namespace-anchor->namespace a))

(eval '(and #t #f) ns)
=> #f

根据您使用的语言,您可能需要提供一个名称空间,具体方法如下:

(define-namespace-anchor a)
(define ns (namespace-anchor->namespace a))

(eval '(and #t #f) ns)
=> #f

你为什么要
eval
ing
'(和#t#f)
呢?请发一个,而不是一段一段的代码。请停止写
[Racket]
在您的问题标题中,这是不必要的,因为您已经将问题标记为
racket
。请确保避免
评估WFF
中的错误。有关更多详细信息,请参阅此。您为什么
评估
(和#t#f)
?请发布一个,而不是一段一段的代码。请停止编写
[racket]
在您的问题标题中,这是不必要的,因为您已经将问题标记为
racket
。请确保避免
评估WFF
中的错误。有关详细信息,请参阅此。