uiop parse-native-namestring portability?

Faré fahree at gmail.com
Thu Jan 7 16:34:14 UTC 2016


Good luck convincing 7 active implementations to agree on how to parse that.
If you know the path is relative and you want portability,
try uiop:parse-unix-namestring.
But even then, things get ugly when you reach wildcard characters.

CL pathname parsing is a huge mess.
If you want to fix it, I suggest:

1- defining exactly what you think the correct behavior should be, and
implement it in iolib
2- send patches to SBCL, CCL, CLISP, ABCL, CMUCL, ECL, and/or MKCL so
they can agree.
3- once the patches are in more than two free software
implementations, file bugs against Allegro, LispWorks
4- forget about SCL, GCL, MCL, Corman, Genera, XCL.

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
The mice which helplessly find themselves between the cats teeth acquire no
merit from their enforced sacrifice.            — Mahatma Gandhi


4-
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org


On Thu, Jan 7, 2016 at 11:22 AM, Jared C. Davis <jared.c.davis at gmail.com> wrote:
> Hi,
>
> Should I be able to expect the following to behave consistently across Lisps?
>
>    (file-namestring (uiop:parse-native-namestring "."))
>
> I find that:
>
>   - CCL and SBCL produce "."
>   - Allegro produces NIL
>   - CMUCL signals an error in LISP::UNPARSE-UNIX-FILE
>
> If I just look at:
>
>    (uiop:parse-native-namestring ".")
>
> I get:
>
>    Allegro:  #P"./"
>    CCL:      #P"."
>    SBCL:     #P"."
>    CMUCL:    #P(:NAME "." :TYPE :UNSPECIFIC)
>
> Cheers,
> Jared
>
> --
> Jared C. Davis <jared at cs.utexas.edu>
> 11410 Windermere Meadows
> Austin, TX 78759
> http://www.cs.utexas.edu/users/jared/
>



More information about the asdf-devel mailing list