Re: Is this correct?

"Marco Antoniotti (as marco dot antoniotti at unimib dot it)" <[email protected]>
Newsgroups gmane.lisp.lispworks.general
Message-ID <CAG0Nw2k1O8q_ZMGLewoiTk+N2g=gy=GYZ4CbDF+1FaCh03e35w@mail.gmail.com>
Nope.

It does not explain the difference.

The difference is the "interpretation" made somewhere in the guts of SBCL,
LW and ECL about how to do truename, given the underlying file system case
conventions, but not the user's expectations.

NB.  I tend to think that SBCL is doing truename correctly here.

MA

On Fri, Feb 20, 2026 at 5:56 PM Tim Bradshaw <[email protected]> wrote:

> In SBCL it's a pathname which specifies the directory the Lisp started in,
> while in LW it's essentially a null pathname.  This explains the difference
> (up to filesystem case-sensitivity issues).
>
> I don't know what happens in SBCL if you change the Unix working directory
> of the process.  I'd check but I have a cat sitting on me who would object.
>
> --tim
>
> On 20 Feb 2026, at 16:27, Michał phoe Herda (as phoe at disroot dot org) <
> [email protected]> wrote:
>
> 
>
> What is *DEFAULT-PATHNAME-DEFAULTS* on LW and SBCL?
> https://www.lispworks.com/documentation/HyperSpec/Body/v_defaul.htm
>
> Asking because that is going to affect the value of LOAD-PATHNAME, as per
> https://www.lispworks.com/documentation/HyperSpec/Body/v_ld_pns.htm
>
> Both are correct, I just suspect that the implementation-defined default
> is different.
>
> W dniu 2026-02-20 17:12, Marco Antoniotti (as marco dot antoniotti at
> unimib dot it) napisał(a):
>
> Hi
>
> I am finding some issues with *load-pathname* and *load-truename*.
>
> Here is what I see in LWM (8.x).  I did a change-directory beforehand).
>
> CL-USER 5 > *(load "tmp/lpn.lisp")*
> ; Loading text file /Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/lpn.lisp
> LPN: Test: *load-pathname* #P"tmp/lpn.lisp"
> LPN: Test: *load-truename*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/lpn.lisp"
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/lpn.lisp"
>
> CL-USER 6 > *(load "tmp/Lpn.lisp")*
> ; Loading text file /Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/Lpn.lisp
> LPN: Test: *load-pathname* #P"tmp/Lpn.lisp"
> LPN: Test: *load-truename*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/Lpn.lisp"
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/Lpn.lisp"
>
> CL-USER 7 > *(load "tmp/LPN.lisp")*
> ; Loading text file /Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/LPN.lisp
> LPN: Test: *load-pathname* #P"tmp/LPN.lisp"
> LPN: Test: *load-truename*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/LPN.lisp"
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/LPN.lisp"
>
> However, SCBL seems to be "more correct".
>
> CL-USER> *(load "tmp/lpn.lisp")*
> LPN: Test: *load-pathname*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/lpn.lisp"
> LPN: Test: *load-truename*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/lpn.lisp"
> T
> CL-USER> *(load "tmp/Lpn.lisp")*
> LPN: Test: *load-pathname*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/Lpn.lisp"
> LPN: Test: *load-truename*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/lpn.lisp"
> T
> CL-USER> *(load "tmp/LPN.lisp")*
> LPN: Test: *load-pathname*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/LPN.lisp"
> LPN: Test: *load-truename*
> #P"/Users/marcoxa/Projects/Lang/CL/HELambdaP/tmp/lpn.lisp"
> T
>
> The actual file is tmp/lpn.lisp and it is listed below.
>
> (format t "LPN: Test: *load-pathname* ~S~%" *load-pathname*)
> (format t "LPN: Test: *load-truename* ~S~%" *load-truename*)
>
> Any thoughts?
>
> Marco
>
> --
> Marco Antoniotti, Professor, Director         tel. +39 - 02 64 48 79 01
> DISCo, University of Milan-Bicocca U14 2043   http://dcb.disco.unimib.it
> Viale Sarca 336
> I-20126 Milan (MI) ITALY
>
> REGAINS: https://regains.disco.unimib.it/
>
>
>

-- 
Marco Antoniotti, Professor, Director         tel. +39 - 02 64 48 79 01
DISCo, University of Milan-Bicocca U14 2043   http://dcb.disco.unimib.it
Viale Sarca 336
I-20126 Milan (MI) ITALY

REGAINS: https://regains.disco.unimib.it/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.