ASDF可选系统依赖项

时间:2012-10-05 17:13:00

标签: common-lisp asdf

我有一个我写的系统,尽可能使用lparallel,否则可以解决它。问题是,我现在正试图在ECL上测试它,仅在加载lparallel时出错。

是否有方法(#-ecl除外)指定按实现类型参数化的系统依赖项?我看过Madiera Port,但它似乎只适用于子组件,而不是系统依赖。我希望将我的.asd文件保存为一个简单的机器可读形式,没有读者条件等。

(除了:当前ECL上的并行加载很好。我的过时了。)

1 个答案:

答案 0 :(得分:3)

据我所知,除了读者条件外,在ASDF中没有直接的方法。您可以改为使用XCVB,或编写一个添加新语法的defsystem*宏,或者(可能)挂钩现有的defsystem,就像马德拉一样。

在不知道你的动机的情况下,我想知道为什么要避免使用#-ecl的简单解决方案。您是否希望存储将ECL链接到不存在lparallel的元数据?注意{1}}和#-lparallel可以在lisp文件中使用。

顺便说一句,lparallel在ECL中为我加载了很好。你在运行最新的ECL吗? ECL中存在一个已知错误,导致lparallel测试最终挂起,但这可能不会影响所有平台。