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:
- 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.
- 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?
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 ASDF.
Best, R
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@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
asdf-devel mailing list asdf-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel