On 11 June 2011 03:50, Faré fahree@gmail.com wrote:
ASDF doesn't introduce logical pathnames, and when you provide them, it makes sure to pass them through to the implementation.
Behaviour of logical pathnames with DIRECTORY is somewhat underspecified.
Given
(setf (logical-pathname-translations "foo") `(("**;*.fasl.*" "/home/foo/faslcache/**/*.fasl") ("**;*.*.*" "/home/foo/**/*.*")))
and existence both
/home/foo/faslcache/bar/quux.fasl /home/foo/bar/quux.fasl
should
(directory "foo:bar;x.fasl")
return both, or just the one in faslcache?
SBCL opts for both (modulo the aforementioned bug), other implementations may do things differently.
Calling TRANSLATE-LOGICAL-PATHNAME first makes the answer unambiguous -- just the faslcache one, thanks -- which is why I believe ASDF should do that prior to calling DIRECTORY.
Cheers,
-- nikodemus