<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
<br><div><div>On 2010-03-30, at 16:25 , Juan Jose Garcia-Ripoll wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div class="gmail_quote">On Tue, Mar 30, 2010 at 4:19 PM, Robert Goldman <span dir="ltr"><<a href="mailto:rpgoldman@sift.info">rpgoldman@sift.info</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"> <div class="im">On 3/29/10 Mar 29 -6:42 PM, Faré wrote:<br> > One site per system looks like it will quickly pollute the host<br> > namespace. What about we instead use a single logical host with<br> > subdirectories?<br> ><br> > #P"COMMON-LISP:SYSTEMS;CL-PPCRE;CL-PPCRE.ASD"<br> ><br> > The problem I have with this approach with logical pathnames at all is<br> > that I don't understand whether or not mixed case and other characters<br> > are allowed at all.<br> <br> <br> </div>They are not.<br> <br> The syntax of logical pathname namestrings is<br> <br> "word---one or more uppercase letters, digits, and hyphens."<br> <br> This causes pain when working with people WhoLikeOtherProgrammingLanguages.<br></blockquote></div><br>No, it does not cause any problem. If you have data that has weird names, but you know where they live in your system,</blockquote><div><br></div>designators for auxiliary files is not the issue.</div><div><br><blockquote type="cite"> then instead of using ASDF to query the paths you can simply query the logical hostname and merge the resulting path with the "nonstandard" components.<br> <br>So, instead of calling ASDF to locate your system, query its pathname, etc, you would do<br><br>(defvar *my-code-base-path* (translate-logical-pathname "MY-SYSTEM:"))<br><br>(defvar *my-nonstandard-component* (merge-pathname "foo/MixedCaseWith#WeirdChars.dat" *my-code-base-path*))<br></blockquote><div><br></div>the problem arises when asdf itself needs to designate such files.</div><div>a portable mechanism to achieve that approaches reimplementing the logical pathname subsystem.</div><div><br></div><div>just check out the pathname tests, put some nonconformant names in the test specification and watch them fail.</div><div>differently in each implementation.</div><div><br></div><div><br></div></body></html>