[asdf-devel] Tutorial ASDF(?)

Zach Beane xach at xach.com
Fri May 20 20:18:39 UTC 2011


Ernst van Waning <evw at infometrics.nl> writes:

> Dear Robert,
>
>>> However, I have one question: what is the reason that these
>>> output translations are apparently not applied to the .asd
>>> files?  The way I understand my output-translations, I have
>>> globally specified that all fasls are in an
>>> implementation-specific directory just below my source
>>> files.  For me, .asd files are just source files, so why not
>>> place them where the other fasls are written?
>
>> Not sure I fully understand.  As you say, the .asd files are just
>> source files, and they are never compiled, so there is no need
>> to do any output translations for them.
>
>> I may not have fully followed the question....
>
> concerning the .asd files, I use cl path/to/..asd in the REPL and both
> sbcl and acl try to find fasls for them.  If there is no corresponding
> fasl, they write one.
>
> At present, I do an explicit (load #P"path/to/system.asd") to prevent
> Lisp from writing fasls.  So, the question comes from a habit developed
> over the years: why aren't defsystem files trated the same way as source
> files, i.e., treated according to what is specified in
> asdf-output-translations.conf?
>
> Hopefully this explains a bit of the backgrond of my question.

.asd files should not be loaded directly with cl:load or any shortcut
that involves cl:load, like cl path/to/whatever.asd. ASDF sets up an
environment when loading an .asd file that is not the same as the
environment established by cl:load.

The only way (with which I'm familiar) to properly load an .asd file is
via asdf:find-system.

Zach




More information about the asdf-devel mailing list