2012-10-05 78 views
0

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

有没有一种方法(除了#-ecl)指定系统依赖性参数化的实现类型?我已经看过Madiera Port,但它似乎只适用于子组件,而不是系统依赖项。我想保持我的.asd文件作为一个简单的机器可读的形式,没有读者条件语句等

(旁白:。lparallel加载罚款对当前ECL矿只是过时。)

回答

3

据我所知除了读者条件之外,没有直接的方法可以在ASDF中做到这一点。您可以改用XCVB,或者编写一个defsystem*宏,它可以像Madeira那样添加新的语法或(可能)挂钩到现有的defsystem中。

不知道你的动机,我想知道为什么简单的解决方案#-ecl正在避免。您是否希望存储将ECL链接到不存在并行的元数据?注释#-lparallel#+lparallel可用于lisp文件。

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

+0

啊,谢谢你的提示。我的ECL确实已经过时了。我有兴趣保持defsystem表单简单,以支持简单的外部工具。 – Lex