0
假设有一个表达式基本上被简化为: (true false)
或真或假的任意组合。方案/球拍:评估谓语和真/假
例如, [(predicate) false]
或[(predicate) (predicate)]
我想了解如何表达这样的方案进行评估 - 什么是这样的说法基本上是在说什么?
假设有一个表达式基本上被简化为: (true false)
或真或假的任意组合。方案/球拍:评估谓语和真/假
例如, [(predicate) false]
或[(predicate) (predicate)]
我想了解如何表达这样的方案进行评估 - 什么是这样的说法基本上是在说什么?
作为一个术语在cond
:
(cond
[(predicate) false]
[else true])
将是有条件实现的(not (predicate))
因为谓词必须是一个真正的价值会得到一个错误的结果。
(cond
[(predicate) (predicate)]
[else false])
这是一样的(predicate)
,因为它本身成为所有真正的价值,我已经添加了默认情况下变得很假值。
在任何这些,如果你有别的东西作为默认情况下,它当然不会映射到这些简单的结果,但一个稍微复杂一点的:
将是相同(and (predicate) 'something)
,因为我们有将错误值更改为something
。
(cond
[(predicate) false]
[else 'something])
将作为(and (not (predicate)) 'something)
同样是例子应该是在'cond'特殊形式的条款?正如现在写的,似乎'predicate'需要返回一个过程来将'false'作为参数。 (方括号可用于所有你有括号的地方,例如'[odd?5]; ==>#t') – Sylwester
是的,它们应该是cond。你是对的,他们会首先通过一个程序来返回真或假。 @Sylwester –