[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:


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:


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