[asdf-devel] I think new ASDF has busted asdf-binary-locations

Robert Goldman rpgoldman at sift.info
Wed Sep 9 14:27:16 UTC 2009

james anderson wrote:
> hello;
> i recall, that we have started down this path before, but we never  
> got very far, so i would like to pick up the thread again:
> what exactly fails (or is just inconsistent) in the respective  
> logical pathname implementations to preclude accomplishing the same  
> thing with logical pathnames?
> whatever that may be, why is it better to re-implement the  
> functionality for asdf rather than to fix the problem?

Two things rule out logical pathnames as a solution for this problem:

1.  They don't actually solve the problem --- in order to get what you
want you'd still need to have logic that redirects the binary files to
different directories.  I.e., we'd have to add logic to differentially
define logical pathnames for binaries depending on features of the lisp
implementation and then we'd have to add logic to methods for
output-files.  Gary's A-B-L just fixes this with methods for
output-files.  So it's a simpler solution and more portable.

2.  Logical pathnames are defined in ANSI CL to use case-flattened
pathnames.  That means they are an extremely poor fit for modern
case-sensitive file systems.  Some number of existing ASDF systems would
break because their directory structures contain case-sensitive
pathnames.  From the Hyperspec grammar for logical pathname namestrings
(section 19.3.1):

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

As long as SBCL hews to the letter of the ANSI spec for logical
pathnames, I regard logical pathnames as useless in portable code.  I
now use them only in code that, for one reason or another, will only run
in ACL.  [Note that this is /not/ meant as a criticism of the SBCL policy.]

So Gary's existing solution is (a) more portable; (b) simpler; and (c)
less damaging to existing ASDF systems; (d) it's done and (e) it's
extensively tested in the wild.

I think the only question is whether we should make A-B-L optional as
now (but distribute it with stock ASDF) or, as Attila suggests,
integrate it fully, but configure it so that it behaves as current stock


> On 2009-09-09, at 14:39 , Robert Goldman wrote:
>> Gary King wrote:
>>> (cc'd to list)
>>> Damn. The function disappeared recently (by my hand). I didn't  
>>> realize
>>> (obviously) that it was used. I'll fix.
>> Gary,
>> Maybe this would be a good time to push A-B-L into the ASDF  
>> repository?
>>  I've always been in favor of this, acnyway, since it's such a  
>> critical
>> extension.  IMO it would be great if anyone who had ASDF could also  
>> get
>> A-B-L with no more work than a call to asdf:oos.
>> Best,
>> r
>>> On Sep 8, 2009, at 11:17 PM, Robert Goldman wrote:
>>>> I just updated, and now can't start up lisp because
>>>> asdf-binary-locations calls ASDF::RESOLVE-SYMLINKS which seems to  
>>>> have
>>>> vanished from asdf.lisp.
>>>> Any insight?
>>>> r
>>> -- 
>>> Gary Warren King, metabang.com
>>> Cell: (413) 559 8738
>>> Fax: (206) 338-4052
>>> gwkkwg on Skype * garethsan on AIM * gwking on twitter
>> _______________________________________________
>> asdf-devel mailing list
>> asdf-devel at common-lisp.net
>> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
> _______________________________________________
> asdf-devel mailing list
> asdf-devel at common-lisp.net
> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

More information about the asdf-devel mailing list