Faré wrote:
> It's hopefully fixed in 1.725, except that somehow in the commit
> message, I wrote pjb where I should have written jcb. Oops.

Thanks for the commit. And don't worry, I have been called worst...

> 
> My "solution" to the "current-directory" thing was to rename it to
> "default-directory".

I am not sure I understand whether this really serves your purpose.
"default-directory" and "current-directory" are two quite different
concepts after all.  I guess that now function "default-directory" is
in a better position to declare itself correct by construction.
But I still don't see what usefulness it will have on lisp systems
that chose to not accept (truename #P"") as designating anything
special (as, for one thing, the process current directory). Nothing
in the ANSI CL standard mandates (truename #P"") to mean anything
and I would even argue that assigning a meaning to (truename #P"")
runs against the spirit of the ANSI CL text on truename...
(I say this above in the context of *default-pathname-defaults*
being #P"" itself.)

Cheers,

Jean-Claude Beaudoin

> 
> [ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
> You think you know when you can learn, are more sure when you can write,
> even more when you can teach, but certain when you can program.
>         — Alan Perlis
> 
> 
> 
> 
> On 18 May 2010 06:32, Jean-Claude Beaudoin
> <jean.claude.beaud...@gmail.com> wrote:
>> Here is a patch against 1.720 that fixes a weakness in merge-pathnames*.
>> This was a show stopper in my system.
>>
>> It seems that merge-pathnames* assumes that *default-pathname-defaults*
>> has some interesting value to contribute which is not always the case.
>> In my system and in a few others (clisp comes to mind) the usual value
>> of *default-pathname-defaults* is #P"" which ends up giving
>>
>> (pathname-directory *default-pathname-defaults*) => nil
>>
>> Then, (append nil (cdr directory)) is probably not a "valid pathname 
>> directory".
>> In clisp passing this not so "valid pathname directory" to make-pathname will
>> result in a visit in the debugger...
>>
>> I want also to insist again on the issue of accessing the process current 
>> directory.
>> Assuming that *default-pathname-defaults* is a substitute for the process 
>> current
>> directory is not portable ANSI Common Lisp code. The following definition is 
>> very
>> likely to be wrong on at least one ANSI Common Lisp conforming 
>> implementation:
>>
>> (defun current-directory ()
>>   (truenamize (pathname-directory-pathname *default-pathname-defaults*)))
>>
>>
>> Cheers,
>>
>> Jean-Claude Beaudoin


_______________________________________________
asdf-devel mailing list
asdf-devel@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Reply via email to