lisp项目的结构

时间:2015-11-27 05:29:59

标签: lisp common-lisp allegro maxima

当我使用Eclipse或Visual Studio或Xcode时,项目的结构会自动创建,并且可以立即开始。

现在我正在尝试在Allegro CL express版本上创建一个项目,如果我收集所有lisp文件并运行它,它会显示包错误,我认为这是因为文件未按特定顺序执行,因为必须创建包在一些必须先执行的文件中。

我无法理解如何解决这个问题。关于在lisp中创建大型项目以及如何逐步处理其大小和复杂性的信息很少或很少。

我想将Maxima移植到Allegro CL上。我可以在这里得到一些帮助吗?如果可以解释多个文件和包中的代码分解,以及基本上如何加载整个系统。

我了解lisp的基础知识,但我不了解lisp项目的结构。

2 个答案:

答案 0 :(得分:6)

好消息:Maxima已经有一个Allegro端口。您应该能够使用./configure --with-acl构建它,然后键入make。我最近没有用过这个,但我希望这可以工作。

如果您想了解有关加载内容的更多信息,请查看src/maxima.system。它有点陈旧,因为它是为defsystem编写的,现在已被asdf替换为其他任何地方。

答案 1 :(得分:6)

嗯,Maxima可以通过defsystem或asdf由几个Lisp编译,包括Allegro。有关详细信息,请参阅INSTALL.lisp。

我所知道的唯一限制是Allegro Express版本无法编译SLATEC派生的代码(从Fortran转换的函数太大或类似的东西)。因此,您必须在maxima.system或maxima.asd中注释掉SLATEC的内容。