制作具有特定名称的列表

时间:2011-03-31 07:08:58

标签: lisp

您好 如何创建具有特定名称的列表,例如,使用名称myList =(1 2 3 4 5)创建此列表。 感谢

1 个答案:

答案 0 :(得分:6)

全局:

(defvar my-list (list 1 2 3 4 5))

本地:

(let ((my-list (list 1 2 3 4 5)))
  <code using my-list goes here>)

注意: ANSI Common Lisp中没有词法全局变量(尽管可以使用define-symbol-macro伪造它们)。使用defvardefparameter声明一个全局变量会生成变量special,从而从变量中删除闭包等词法属性。因此,您可能希望通过在变量名称中使用耳罩来区分特殊变量和词法变量:

(defvar *my-list* (list 1 2 3 4 5))