我开始学习lisp并且正在寻找一种管理我的个人库的有效方法。
所以我认为将我的库编译成单个fasl文件(包含包信息和实际实现)会很有用,然后我可以加载(load "lib.fasl")
来包含库。问题是,该库由多个 * .lisp - 文件组成,例如 foo.lisp 和 bar.lisp 。
我分别使用(compile-file "foo.lisp")
和(compile-file "bar.lisp")
分别编译它们。
显然,当我想要手动LOAD
库的每个文件(即 foo.fasl 和 bar.fasl )时,它会非常混乱使用它们,所以我正在寻找像
(link "foo.fasl" "bar.fasl" :output "lib.fasl")
或
(compile-file "foo.lisp" "bar.lisp" :output "lib.fasl")
生成一个 lib.fasl ,然后我可以LOAD
。
我不想使用核心文件,因为我希望能够灵活地组合我的库(这需要为每个可能的库组合创建一个单独的核心文件)。
我在SBCL用户手册中查找了执行此操作的lisp函数和使用CLI查看功能的SBCL联机帮助页,但我无法找到任何内容。
我更喜欢使用SBCL的解决方案,但我也会采取其他任何措施。
提前致谢!