[asdf-devel] Pushed :here-directive topic branch
Robert Goldman
rpgoldman at sift.info
Wed Nov 24 14:46:46 UTC 2010
On 11/23/10 Nov 23 -11:54 PM, Faré wrote:
> On 23 November 2010 23:24, Robert Goldman <rpgoldman at sift.info> wrote:
>> This branch has patches that add the :here directive to Faré's
>> configuration DSL. This allows for configuration files to have contents
>> like:
>>
>> (:source-registry
>> (:tree (:here "src/lisp/"))
>> (:tree (:here "extlib/lisp"))
>> (:directory (:here "outlier/")))
>>
> I like the idea, and your patch looks mostly good, but
> 1- you should probably be using (default-directory) instead of
> *default-pathname-defaults*
I will modify the code accordingly.
> 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.
>
> When you merge into master, don't forget to bump up the version number.
Will do.
Happy Thanksgiving! Good luck on your travels!
R
More information about the asdf-devel
mailing list