如何管理常见的lisp依赖项?

dea*_*ost 6 lisp dependencies common-lisp asdf quicklisp

什么是pip需求文件,ruby gemfile,node package.json等的lisp等价物?我不完全确定asdf和quicklisp是如何关联的,如果这些是适当的使用方法.

dea*_*ost 5

.asd 文件是需求文件。使用quicklisp 安装需求。

使用 ASDF 定义“系统”。创建一个my-system.asd文件。

(asdf:defsystem #:my-system
  :serial t
  :description "Describe my-system here"
  :author "My Name <my.name@example.com>"
  :license "Specify license here"
  :depends-on (#:hunchentoot
               #:cl-who)
  :components ((:file "package")
               (:file "dispatch")))
Run Code Online (Sandbox Code Playgroud)

这将创建名为#:my-system 的系统。我实际上不确定 # 表示什么,因为我在源代码中看到过没有它的系统定义。仅需要第一行。:depends-on告诉 ASDF 在处理这个新系统定义之前加载其他系统。在这种情况下,它加载#:hunchentoot#:cl-who:components加载特定文件。package.lispdispatch.lisp已加载。:serial t告诉它按顺序加载。dispatch.lisp如果 say依赖于需要首先加载的package.lisp东西,这一点很重要。package.lisp

使用quicklisp下载并安装:depends-on. 跑步 (ql:quickload "my-system")

我没有看到任何版本控制的迹象。