[asdf-devel] Optional dependencies

Juan Jose Garcia-Ripoll juanjose.garciaripoll at googlemail.com
Fri Aug 20 09:24:51 UTC 2010


On Thu, Aug 19, 2010 at 10:13 AM, Tobias C Rittweiler <tcr at freebits.de>wrote:

> Now I'm wondering how good that solution is.
>

Bad. I already spoke about why I am against reader conditionalization in
ASDF files. Dependencies should only be either features (strictly CL
implementation dependent not the ones introduced by libraries) or modules
(thus recognized by ASDF), which may themselves be optional or compulsory
and ASDF should provide a good syntax for both.


> What is if the library was compiled with a core that
> happened to include named-readtables? Trying to load
> that fasl with another core file would probably result
> in an obscure error. Now, it's a shoot-yourself-in-the-foot
> kind of thing to do, but I'd think it's something that
> can happen quite easily. Does ASDF somehow guard against
> this case?
>

This is one of the reasons why reader conditionalization is bad: the
dependency is stored outside ASDF, in *features*, which is not good. If one
sticks to ASDF, it would recognize the named-readtables modules to be
present in the core and thus it would work, or it would not find it and then
it would load it.


> From what I can see, it appears that :WEAKLY-DEPENDS-ON
> was added in a quick rush thinking that it might be
> appropriate for conditional compilation, but it really
> is not. Does that seem true to you, too?
>

I once tried to understand how :weakly-depends-on works, but I simply could
not (ASDF internals really elude me). Hence, I am not sure whether it is the
replacement I have in mind, but the name seems ok :-)

Juanjo

-- 
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/asdf-devel/attachments/20100820/8473e625/attachment.html>


More information about the asdf-devel mailing list