[asdf-devel] output-translations documentation

Faré fahree at gmail.com
Fri Mar 12 16:43:39 UTC 2010


>> (asdf:initialize-output-translations
>>  `(:asdf-output-translations
>>     (:root (,(truename *default-pathname-defaults*) :implementation-type))))
>
> What happens to this as the value of *default-pathname-defaults* changes
> over time?
>
Well, Lisp is call-by-value, so this clearly takes the current directory
at the time this initialization takes place.
I think it is crazy to try to offer a :current-directory directive
the semantics of which you'd have to specify.

> I guess I don't understand the role of the (truename
> *default-pathname-defaults*) here.
>
It locates the cwd at the time of execution of this form.
On some implementations, indeed (like CMUCL), *default-pathname-defaults*
is #p"" by default, and you better resolve that, or have surprises.

> Does this mean that A-O-T by default always does the equivalent of
> *centralize-binaries* in A-B-L?
>
Yes. That is the default configuration indeed.
It should be documented prominently.

If you think it's wrong, it's still time to revert this default
before ASDF 2 is released.

> Question:  for people who have been using ASDF-BINARY-LOCATIONS for a
> while without a deep understanding (e.g., colleagues of mine who just
> did what I told them to), would it be possible to provide
>
> (ASDF:ABL-COMPATIBILITY-MODE)
>
> as an alias for the former?
>
> That would allow an easy
>
> #+ASDF2
> (ASDF:ABL-COMPATIBILITY-MODE)
> #-ASDF2
> (ASDF:OOS 'ASDF:LOAD-OP :ASDF-BINARY-LOCATIONS)
>
> in lisp init files.
>
That's a great idea.
function ASDF:ASDF-BINARY-LOCATION-COMPATIBILITY-MODE
would take keyword arguments :centralize-binaries, etc.,
with proper defaults.

We probably also want a simple function to disable A-O-T.

[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
Those who hammer their guns into plows will plow for those who do not.
	— Thomas Jefferson




More information about the asdf-devel mailing list