使用变量最简单的方式是 全局(globally) 使用。这意味着一个变量同一时刻只有一个值,并且该值在整个 Lisp 系统中都生效(至少当前是如此)。这个值会一直有效,直到你为它指定新的值。当新值替换旧值后,变量中就不再保留旧值的痕迹。
你可以使用 setq 为一个符号指定值。例如:
(setq x '(a b))
将变量 x 的值设为 (a b)。注意,setq 是一个特殊形式(see 特殊形式):它不对第一个参数(即变量名)求值,但会对第二个参数(即新值)求值。
一旦变量拥有了值,你就可以直接将符号本身作为表达式来引用该变量。因此,
x ⇒ (a b)
假设上文所示的 setq 表达式已执行完毕。
若你再次为同一个变量赋值,新值会覆盖掉旧值:
x
⇒ (a b)
(setq x 4)
⇒ 4
x
⇒ 4