[asdf-devel] ASDF:OOS LOAD-OP :FORCE T and SBCL contribs

Robert Goldman rpgoldman at sift.info
Tue May 12 19:37:00 UTC 2009

Richard M Kreuter wrote:
> Gary King writes:
>>>> Perhaps a better solution would be to export OPERATION-FORCED and
>>>> TRAVERSE, so that this could be deal with where-ever is needed --
>>>> especially in local initialization files for systems installed in
>>>> read-only locations. The SBCL solution would look about the same --  
>>>> it just would not reside inside asdf.lisp.
>>> This seems like a reasonable solution.
>> I agree. There are probably two items here:
>> 1. Allowing a system definer to say "don't descend into this sub- 
>> system" even when :force is t.
> This sounds fishy to me.  AFAIU, system definers aren't supposed to be
> able to make decisions about installation, at least in part because the
> author of a system can't really know what the user's installation
> requirements are.  (Cf. the rationale for telling users to customize
> fasl location with a method on OUTPUT-FILES.)
> --
> Richard

Richard makes a good point here.  The problem is that while ASDF says,
and I think correctly, that system definers shouldn't make decisions
about installation, it does not provide any hooks for installers to
provide information about installation.

The upshot is that ASDF is also saying (unintentionally) that installers
shouldn't make decisions about installation! ;-)

If we wish to keep this design principle, it seems that we should
provide a facility for installers to annotate asdf system definitions.
Presumably these annotations should be "on the side" and not in the
system definition files themselves.


More information about the asdf-devel mailing list