[asdf-devel] FInding a system file in the current directory
Zach Beane
xach at xach.com
Sun Oct 3 23:56:21 UTC 2010
Robert Goldman <rpgoldman at sift.info> writes:
> On 10/3/10 Oct 3 -6:17 PM, Dave Penton wrote:
>> Can asdf find a file containing a system definition in the current working directory?
>>
>> (Yes, I have read ch.7 of the manual. It may start to make sense on the third reading, but so far not much joy :-)
>
> I think a problem with this question is that the notion of "current
> working directory" isn't always to the point in Common Lisp. There
> seems to be a sense that *default-pathname-defaults* will be
> synchronized with the working directory of the lisp process (cf
> http://www.lispworks.com/documentation/HyperSpec/Body/v_defaul.htm
> "Initial Value: An implementation-dependent pathname, typically in the
> working directory that was current when Common Lisp was started up.")
> but it's really *default-pathname-defaults* you should be asking about
> and not CWD.
>
> I have a vague memory that ASDF 1 provided a mechanism for putting
> *default-pathname-defaults* into your asdf:*central-registry*; I don't
> recall how this was done....
>
> If you are not using Fare's new configuration language, you might just
> be able to do (push *default-pathname-defaults* asdf:*central-registry*).
Values in *CENTRAL-REGISTRY* are evaluated before use, so you can use
this:
(pushnew 'cl:*default-pathname-defaults* asdf:*central-registry*)
It worked the same in ASDF 1.
> The question is "why do you want to do this, instead of using Fare's
> language or configuring by setting asdf:*central-registry*?" If we had
> a better sense of the answer to that question, we could probably provide
> better assistance.
Adding a single directory with Fare's configuration language is pretty
verbose. Even pushing the path to *central-registry* is cumbersome. It's
easier to ,cd in slime.
Zach
More information about the asdf-devel
mailing list