[asdf-devel] Pushed :here-directive topic branch

Faré fahree at gmail.com
Wed Nov 24 15:59:38 UTC 2010


On 24 November 2010 09:46, Robert Goldman <rpgoldman at sift.info> wrote:
>> 1- you should probably be using (default-directory) instead of
>> *default-pathname-defaults*
> I will modify the code accordingly.
>
Scratch that. You should be using *default-pathname-defaults*,
but to save work, bind it to (default-directory) around
the call to inherit-source-registry in flatten-source-registry.

>> 2- why not bind *default-pathname-defaults* instead of a new variable?
>>   NB: that would change the meaning of default-directory - may or may
>> not be a good thing.
>
> I'd rather not do that, unless you think it's really important.  I like
> having the distinctive *here-directory* special because it's guaranteed
> not to mutate parts of the state that I don't understand.  I am not
> confident that by modifying *d-p-d* I won't break something elsewhere.
>
> I could be persuaded to kill the new variable in favor of using *d-p-d*,
> but I'm not persuaded yet...
>
>> 3- you can wrap the whole body of process-source-registry (pathname
>> &key ...) in a
>>    (let ((*proper-variable* (pathname-directory-pathname pathname))) ...)
>
> I wasn't confident of what would happen in the third branch of the COND
> --- the one with
>
> (inherit-source-registry inherit :register register)
>
> if I did that.  If you're sure I won't mess something up that way, I'll
> make the change.  I'm looking at the test suite, and I'm pretty sure I
> could bork ASDF by messing up I-S-R without the test suite noticing.
>
You're totally right, my suggestion was wrong on point 2,
because of your point 3 below. We probably want to
a- distinguish "here" (relative to config file) from "default"
(something global set by the user).
b- reset "here" to "default" when processing something that's not a file,
 around the body of inherit-source-registry.

> Happy Thanksgiving!  Good luck on your travels!
>
Happy Turkeygeddon!

[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
Comparing oneself with Galileo or Einstein is certainly good for the ego —
provided one refrains from going into too much detail.  — John McCarthy




More information about the asdf-devel mailing list