*LOAD-TRUENAME* and ASDF

Faré fahree at gmail.com
Tue Aug 30 21:56:13 UTC 2016


On Tue, Aug 30, 2016 at 4:46 PM, Jason Miller <jason at milr.com> wrote:
> Somewhat off-topic, but I'll bite:
>
> This is because *load-pathname* is likely to be a relative pathname, and
> relative pathnames have their own problems.  The unix way of solving it
> is to transform relative pathnames with "$PWD/pathname" but I don't
> believe there is a builtin facility for doing the equivalent in common
> lisp, nor did I find one in a quick look throug uiop/pathname.
>
Then you missed uiop:ensure-absolute-pathname, and/or the
:ensure-absolute option to ensure-pathname (and, by extension,
parse-unix-namestring).

It's there because indeed ASDF 3 uses it, precisely to prevent
situations like the one you mention.

It's in uiop/pathname, but if you might in many cases suppose
#'uiop/os:getcwd as its :default.

Remarkably, uiop is now 40% larger than asdf/defsystem, and over eight
times larger than the original ASDF 1.85... that's the price of being
portable and robust.

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
I'll start exercising as soon as I'm into shape.



More information about the asdf-devel mailing list