[asdf-devel] :logical-hostname

Robert Goldman rpgoldman at sift.info
Tue Mar 30 14:19:36 UTC 2010


On 3/29/10 Mar 29 -6:42 PM, Faré wrote:
> One site per system looks like it will quickly pollute the host
> namespace. What about we instead use a single logical host with
> subdirectories?
> 
> #P"COMMON-LISP:SYSTEMS;CL-PPCRE;CL-PPCRE.ASD"
> 
> The problem I have with this approach with logical pathnames at all is
> that I don't understand whether or not mixed case and other characters
> are allowed at all. 


They are not.

The syntax of logical pathname namestrings is

"word---one or more uppercase letters, digits, and hyphens."

This causes pain when working with people WhoLikeOtherProgrammingLanguages.

here's an example:
[SBCL]
CL-USER(1): (setf (logical-pathname-translations "MYSRC")
(list (list "**;*.*.*" "/Users/rpg/src/**/*.*")))

(("**;*.*.*" "/Users/rpg/src/**/*.*"))
CL-USER(2): (translate-logical-pathname "MYSRC:growlnotify;")

#P"/Users/rpg/src/growlnotify/"
CL-USER(3): (translate-logical-pathname "MYSRC:rhino1_7R1;")

#P"MYSRC:rhino1_7R1;"

rpg% ls -d /Users/rpg/src/rhino1_7R1/
/Users/rpg/src/rhino1_7R1/

ACL and SBCL /mostly/ agree, except here:
rpg% ls -d /Users/rpg/src/URLHandler/
/Users/rpg/src/URLHandler/

SBCL:
(translate-logical-pathname "MYSRC:URLHandler;")

#P"/Users/rpg/src/urlhandler/"

and

CL-USER(6): (translate-logical-pathname "MYSRC:URLHandler;")
#P"/Users/rpg/src/URLHandler/"

I don't know whether this is a problem in general --- it doesn't cause
me a problem on MacOSX because it doesn't have a truly case-sensitive
filesystem:

back to SBCL:

(probe-file (translate-logical-pathname "MYSRC:URLHandler;"))

#P"/Users/rpg/src/URLHandler/"

Best,
R






More information about the asdf-devel mailing list