[asdf-devel] Tutorial ASDF(?)

Faré fahree at gmail.com
Fri May 20 23:00:54 UTC 2011


On 20 May 2011 18:14, Ernst van Waning <evw at infometrics.nl> wrote:
> Always having loaded systems the way I described, I have never
> encountered a problem, adding immediately that I go to the directory
> where the software is that I want to work on, after perhaps having
> loaded some systems I regularly use in the same manner.  Working with
> compiled .asd files never gave me a problem.
>
Well, most asdf files are simple enough and
you could load them without problems.

Other ASDF files do ugly stuff, and in a IMNSHO vain attempt
to protect users from stray symbols, etc.,
ASDF creates a new temporary package in which it loads the .asd files.
Some people may or may not depend on it.
I suppose I could break the assumption and see whether Xach comes
to my house with an axe for breaking Quicklisp once more —
or some user of a proprietary application I haven't heard of.
I'd rather not do it without Xach being in the loop.

If it were me, I'd just LOAD the damn file from either ASDF, CL-USER,
or a new ASDF-USER package. Or better yet,
I'd make it a data file in a well-defined DSL,
rather than a full-fledged CL file. That's what XCVB does.
Meh. Backward compatibility trumps all.

> Can you give a reason for not compiling .asd files?
Historical reasons: .asd files are meant to only contain simple stuff,
and historically, compiling is slow (ASDF was written ten years ago
on SBCL).

> What are the advantages of accessing .asd files only by means of
> asdf:find-system?
So that a proper package be defined, some magic be performed to prevent
infinite recursion in corner cases (see recent bug reported by Nikodemus),
and some error handling may happen.

> I surely must have configured something very wrongly, here it takes a very
> long time and chances are the system I am after will not be found...
>
It may help to describe your configuration. Which implementation on
which OS, which version of ASDF, and what do you have in your configuration?

> Sorry for insisting, but can you tell me why exactly, i.e., the
> advantages of (asdf:find-system <system.) and the disadvantages of mine?
>
See the function load-sysdef, which explains the difference.

Regards,

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
Backwards compatible — If it's not backwards it's not compatible
        — Greg Newton <gregnewton at netscape.net>




More information about the asdf-devel mailing list