2

我正在 Common Lisp 中开发一个项目,该项目使用通过快速加载安装的包。我在项目的根目录中制作了一个 bash 脚本,用于测试是否安装了必要的程序,如果一切顺利,它会运行一个加载我的项目的 lisp 脚本。我想要一些方法来测试是否安装了 quicklisp,这样我就可以让它可以请求用户自动下载和安装 quicklisp 的权限。有没有办法对此进行测试?Quicklisp 安装在 clisp 中,而不是作为操作系统上的包安装,因此使用 bash 内置函数来测试是否安装了程序将不起作用。

4

1 回答 1

3

从 Lisp 内部:Quicklisp:quicklisp列入cl:*features*名单。如果 Quicklisp 已经加载到 Lisp 中,那么这个符号就在*features*列表中。

要测试它:

(member :quicklisp *features*)

在 Lisp 代码中,您还可以使用条件阅读器:

#+quicklisp (print "quicklisp installed")

或者

#-quicklisp (print "quicklisp not installed")
于 2012-07-17T07:38:15.977 回答