gpt4 book ai didi

clojure - 无参数(和)返回 t

转载 作者:太空宇宙 更新时间:2023-11-03 18:35:08 25 4
gpt4 key购买 nike

CL 和 Scheme 都定义了 (and) 以返回不带参数的 t(或 #t)。

我正在尝试理解这样做的理由。我天真的假设是空集为假,传入零参数感觉就像传入任何可能为真的东西一样。

编辑:clojure 遵循相同的约定。我一定是遗漏了一些基本的 Lisp 假设。

最佳答案

空积为1,原因是1是*的中性元素。

如果你有 2 和 3 的乘积,然后乘以无的乘积,你将得到 2*3*1 = 6。我们可以这样写

  (product (product 2 3) (product)) 
= (product 6 1)
= 6

相同的计算:

  (and (and #t #t) (and)) 
= (and #t ?)
= #t

我们希望空的 (and) 给出一个不影响结果的值 ?。答案是 #t 因为 #t 是一个中性元素。

(and x #t) = x   for all boolean x

关于clojure - 无参数(和)返回 t,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30467726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com