gpt4 book ai didi

scheme - If 和 cond 作为特殊形式

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

考虑 SICP 中的这两段:

This construct is called a case analysis, and there is a special form in Lisp for notating such a case analysis. It is called cond (which stands for “conditional”), and it is used as follows:

...

This uses the special form if, a restricted type of conditional that can be used when there are precisely two cases in the case analysis.

在此上下文中类型是什么意思(条件的限制类型)?这是否意味着:

  • “if”是“cond”的一种吗?因为句子说“有一种特殊形式”,所以只有一种特殊形式,因为“if”是“cond”的一种。
  • “if”和“cond”都是不相关的。它们都是有条件的。如果这是正确的,为什么这句话说“有一种特殊形式”就像它只有一种一样?

最佳答案

if [is] a restricted type of conditional”中,我相信“conditional”并不特别意味着cond;一般而言,它表示“条件语句/表达式”。

所以有两个,condif。每个都可以根据另一个来定义,因此给定的实现可以选择仅将其中一个作为原语,根据它来定义另一个;或者实现可以选择将它们都作为原始特殊形式。

特殊形式由解释器(编译器)本身专门处理。

宏也可以用于此。它们不会被解释器本身处理,而是由它的宏处理机制处理。

所以 if 是一个条件; cond 是一个条件; cond 可以有任意数量的子句; if 必须恰好有两个(或者一个或两个,取决于标准)子句;其余的只是英语。 :)

关于scheme - If 和 cond 作为特殊形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51598174/

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