let
表达式的组成部分一个 let
表达式包含三个部分。第一部分是符号 let
。第二部分是一个列表,称为varlist,其中每个元素要么是一个单独的符号,要么是一个两元素列表,其中第一个元素是一个符号。let
表达式的第三部分是 let
的主体。主体通常包含一个或多个列表。
let
表达式的模板如下:
(let varlist body…)
varlist 中的符号是由 let
特殊形式给予初始值的变量。单独的符号被赋予 nil
的初始值;而每个作为两元素列表的第一个元素的符号则被绑定到 Lisp 解释器评估第二个元素时返回的值。
因此,varlist 可以看起来像这样:(thread (needles 3))
。在这种情况下,在 let
表达式中,Emacs 将符号 thread
绑定到初始值 nil
,并将符号 needles
绑定到初始值 3。
当编写 let
表达式时,你要做的是将适当的表达式放入 let
表达式模板的各个部分。
如果 varlist 由两元素列表组成,这在许多情况下是常见的,那么 let
表达式的模板如下:
(let ((variable value) (variable value) …) body…)