[asdf-devel] Replace *DEFAULT-PATHNAME-DEFAULTS*

Thomas M. Hermann thomas.m.hermann at odonata-research.com
Thu Dec 23 22:03:12 UTC 2010


There are several places where ASDF relies on *DEFAULT-PATHNAME-DEFAULTS* to
provide a default path. The value of this variable is "An
implementation-dependent pathname, typically in the working directory that
was current when Common Lisp was started up." [
http://www.lispworks.com/documentation/HyperSpec/Body/v_defaul.htm ] I think
it would be better to define a variable, like asdf:*pathname-defaults*,
asdf:*registry-pathname-defaults, etc., that is explicitly set using feature
expressions. The biggest argument for not making this change is that some
systems may rely on the value of *DEFAULT-PATHNAME-DEFAULTS*. I don't think
it would be too difficult to correct those systems, but admit that it might
not be worth the effort.

My motivation for making this change was prompted by the function
default-source-registry. It creates a :directory entry in the source
registry that is constructed from the TRUENAME of the value returned by
*DEFAULT-PATHNAME-DEFAULTS*. The first point is that the value
*DEFAULT-PATHNAME-DEFAULTS* is implementation dependent. For the cases I
tested using CCL 1.6 and LispWorks 6.0.1 on Windows 7, the value is the
empty path #P"". The second point is that the pathname returned by TRUENAME
when it is given the empty path is implementation dependent. In the case of
CCL, (TRUENAME #P"") returns the working directory that was current when
Common Lisp was executed. In the case of LispWorks, (TRUENAME #P"") returns
#P"C:/Windows/system32/". This may be the working directory that was current
when LispWorks was started, but it is clearly not a desirable place for ASDF
systems. In either case, the result is a :directory entry in the source
registry that is not well defined. I think it is better to have the default
pathname well defined.

Thank you,

~ Tom
----------------------------------------------------------------
Thomas M. Hermann
Odonata Research LLC
http://www.odonata-research.com/
http://www.linkedin.com/in/thomasmhermann
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/asdf-devel/attachments/20101223/750aecb9/attachment.html>


More information about the asdf-devel mailing list