Re: Is this correct?
"Tim Bradshaw (as tfb at cley dot com)" <[email protected]>
| Newsgroups | gmane.lisp.lispworks.general |
|---|---|
| Message-ID | <[email protected]> |
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/