在任何Scheme标准下,(let (x y z) x)是有效的代码吗?

问题描述 投票:0回答:1

在 Emacs Lisp 和 Common Lisp 中,以下返回

nil

(let (x y z)
  x)

但是在我尝试过的每个方案中,它都会抛出错误。

上述内容在任何计划标准下是否可以接受?

scheme common-lisp elisp let language-comparisons
1个回答
0
投票

“任何版本的计划”是一个非常宽泛的概念,可能需要一些研究才能排除所有历史。但在我知道的现代方案中,这是不允许的,并且 R5RS 标准显然不允许这样做,通过指定

let
的绑定必须以名称/值对形式存在,并且不指定没有名称的名称一个值意味着。

© www.soinside.com 2019 - 2024. All rights reserved.