这意味着在什么版本/方言/ LISP实现上运行?
(据我所知,这本书是用通用LISP (如导言所述)写成的,早于1994年CL标准)。
把问题分成两部分,使问题更清楚。
发布于 2010-11-04 11:52:58
如果我们看看auxfns.lisp在彼得·诺维格的书的网页上发现的话,就会发现
(eval-when (eval compile load)
;; Make it ok to place a function definition on a built-in LISP symbol.
#+(or Allegro EXCL)
(dolist (pkg '(excl common-lisp common-lisp-user))
(setf (excl:package-definition-lock (find-package pkg)) nil))
;; Don't warn if a function is defined in multiple files --
;; this happens often since we refine several programs.
#+Lispworks
(setq *PACKAGES-FOR-WARN-ON-REDEFINITION* nil)
#+LCL
(compiler-options :warnings nil)
)这意味着它应该在Franz快板、Lisp或Lispworks中工作。
发布于 2010-11-04 12:45:46
那些不是函数。这些是变量绑定。并不是所有在形式中出现的第一件事都是函数的名称;包围形式可能会给内部形式带来特殊的意义。例如,let就是这样
(let ((action 42)
(result 51))
(+ action result))在该示例中,action和result都没有命名函数。
发布于 2010-11-04 19:05:41
Lisp的方言被称为“公共Lisp”。这本书是用相对便携的通用Lisp编写的。
https://stackoverflow.com/questions/4096015
复制相似问题