[Openmcl-devel] logical pathnames not working with alias

Gary Byers gb at clozure.com
Thu Nov 13 18:12:56 PST 2008


I'm sure that it's come up more often than this, but the only discussion
of this that I could find in this mailing list's archives was from a 
little over 6 years ago:

<http://clozure.com/mailman/htdig/openmcl-devel/2002-August/004354.html>

As far as I know, nothing substantial has changed since then: at the
BSD/Posix layer (where most of CCL's filesystem code has to work), there's
no such thing as a (legacy MacOS) filesystem alias, though there are
Unix-style hard and soft/symbolic links.

I was going to say that higher-level things like Cocoa still know how
to deal with aliases, but:

<http://developer.apple.com/documentation/Cocoa/Conceptual/LowLevelFileMgmt/Tasks/ResolvingAliases.html>

seems to be current and suggests otherwise. (NSOpenPanel and NSSavePanel
have had the ability to resolve aliases for you since 10.1; apparently,
filesystem functions haven't ever done so, and it's necessary to use
techniques like those described in that article in order to actually
resolve an alias.


I'm probably not a typical Mac user, but if someone had told me that
alias support had been removed from OSX a few releases ago or planned
to do so in the next relase, I wouldn't have been shocked.  The Finder
still offers some level of support for aliases; large parts of OSX
never have.  I'd assume that Apple will eventually reconcile this
disparity, and if I had to bet I'd bet on that being done by dropping
the partial support for aliases that still exists.  (If they were to
reconcile it the other way - by supporting aliases at the BSD layer -
fine, but I'd imagine that the motivation for doing that wouldn't be
very high.)

There are some differences between aliases and links, but there are
a lot of similarities.


On Thu, 13 Nov 2008, Alexander Repenning wrote:

> Say if I make an alias of a folder called "sources" and put that into  the 
> Clozure CL application folder and try to access a file via logical pathname 
> notation
>
> (truename "ccl:sources;sample-file.lisp")
>
> I am getting Error: File "ccl:sources; sample-file.lisp" does not exist
>
> whereas the same works if sources is a regular, i.e., not an alias, folder
>
> This does not work either with the alias when using unix path notation:
>
> (truename "/Applications/Clozure CL 1.2/sources/sample-file.lisp")
>
> but again does work if sources is a real folder.
>
> Does this mean that aliased folders cannot be used for some reason or is 
> there some flag that needs to be set?
>
> Alex
>
>
>
> Prof. Alexander Repenning
>
> University of Colorado
> Computer Science Department
> Boulder, CO 80309-430
>
> vCard: http://www.cs.colorado.edu/~ralex/AlexanderRepenning.vcf
>
>



More information about the Openmcl-devel mailing list