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

Robert Goldman rpgoldman at sift.info
Wed Sep 9 15:54:06 UTC 2009


james anderson wrote:
> On 2009-09-09, at 16:27 , Robert Goldman wrote:
> 
>> 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.
> 
> as i understand this statement, it is not accurate.
> while one does need the logic, one would not "still" need it.
> one specifies the mapping with the logical host definition.
> the logic is equivalent to that which abl implements.
> it is just realized in the pathname translation mechanism.
> 
>> 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.]
> 
> is it perhaps time to deal with this as a community, rather that each  
> asserting that they know better?

Probably, but I don't think we should wait to get the function that
A-B-L provides until we have fixed logical pathnames.  At the expense of
being flip, that's like saying "we'll wait until the Messiah comes."
Especially given how many years the community has been saying "what
comes after the ANSI standard?"

Best,
Robert




More information about the asdf-devel mailing list