2

我目前正在阅读 Peter Seibel 的书“Practical Common Lisp”,并且正在阅读第 26 章:网络编程。在第 366 页上,它说“第一步是将 AllegroServe 代码加载到您的 Lisp 映像中。在 Allegro 中,您可以简单地键入 (require :aserve)。在其他 Lisps(或在 Allegro 中)中,您可以通过加载来加载 PortableAllegroServe位于portableaserve 目录树顶部的文件INSTALL.lisp。下面是我输入它们时的2 个响应:

  1. 当我输入 (require :aserve) 时,响应为 "NIL" 。
  2. 当我输入 INSTALL.LISP 时,响应是错误:尝试获取未绑定变量“INSTALL.LISP”的值。[条件类型:UNBOUND VARIABLE}

我已经在 LispForum 和 comp.lang.lisp 上发布了这个问题,但没有收到任何满意的回复,而且 Peter Seibel 也没有回复我的电子邮件。如果有人可以建议如何纠正此错误,将不胜感激。

非常感谢!

4

2 回答 2

3

您需要从命令行运行INSTALL.lisp,而不是从 Lisp 提示符下运行。但最简单的方法是使用quicklisp获得它:(ql:quickload "aserve")

编辑:

另请注意,文件名是INSTALL.lisp(小写扩展名)。

要使用 SBCL 运行从命令行加载sbcl --load INSTALL.lisp(在目录中,保存文件)。

或者你可以从你的 Lisp 提示符中用完整路径加载它:(load "<path-to-directory>/INSTALL.lisp")

于 2012-07-17T11:05:52.790 回答
2

如果您正确设置了当前目录,那么在 Lisp 提示符下:

(load "install.lisp")
于 2012-07-17T11:19:08.380 回答