Apologies for the complete lack of references headers in this mail, but I'm not subscribed to asdf-devel and only see this message in the common-lisp.net archive.
On 9/13/10 Sep 13 -8:05 AM, Serhiy Yakovyn wrote:
Is this done intentionally?
Robert Goldman rpgoldman at sift.info wrote:
Yes, this is done intentionally. Canonical (i.e., what you get when you translate a symbol) names for ASDF systems (and other ASDF components) are downcased.
I /suspect/ (I am not privy to the intentions of the original developer) that this is because the downcased names --- this policy is applied not just to systems, but to other components as well --- map better to the
way people use modern file-systems.
This is, or was once, or should be, a matter of record. I don't know where asdf is currently hosted nor how far back the revision history there goes, but if you look at a sufficiently ancient version of asdf/README you should find something like
122 *** Component Attributes 123 124 **** A name (required) 125 126 This is a string or a symbol. If a symbol, its name is taken and 127 lowercased. The name must be a suitable value for the :name initarg 128 to make-pathname in whatever filesystem the system is to be found. 129 130 The lower-casing-symbols behaviour is unconventional, but was selected 131 after some consideration. Observations suggest that the type of 132 systems we want to support either have lowercase as customary case 133 (unix, mac, windows) or silently convert lowercase to uppercase 134 (lpns), so this makes more sense than attempting to use :case :common, 135 which is reported not to work on some implementations
-dan
On 14 September 2010 16:21, Daniel Barlow dan@telent.net wrote:
Apologies for the complete lack of references headers in this mail, but I'm not subscribed to asdf-devel and only see this message in the common-lisp.net archive.
On 9/13/10 Sep 13 -8:05 AM, Serhiy Yakovyn wrote: > Is this done intentionally?
Robert Goldman rpgoldman at sift.info wrote: > Yes, this is done intentionally. Canonical (i.e., what you get when you > translate a symbol) names for ASDF systems (and other ASDF components) > are downcased.
> I /suspect/ (I am not privy to the intentions of the original developer) > that this is because the downcased names --- this policy is applied not > just to systems, but to other components as well --- map better to the way people use modern file-systems.
This is, or was once, or should be, a matter of record. I don't know where asdf is currently hosted nor how far back the revision history there goes, but if you look at a sufficiently ancient version of asdf/README you should find something like
122 *** Component Attributes 123 124 **** A name (required) 125 126 This is a string or a symbol. If a symbol, its name is taken and 127 lowercased. The name must be a suitable value for the :name initarg 128 to make-pathname in whatever filesystem the system is to be found. 129 130 The lower-casing-symbols behaviour is unconventional, but was selected 131 after some consideration. Observations suggest that the type of 132 systems we want to support either have lowercase as customary case 133 (unix, mac, windows) or silently convert lowercase to uppercase 134 (lpns), so this makes more sense than attempting to use :case :common, 135 which is reported not to work on some implementations
Thanks, Dan. I committed these paragraphs to the current ASDF manual.
And -- thanks a whole lot for ASDF and your other CL hacks.
[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] That life is worth living is the most necessary of assumptions, and were it not assumed, the most impossible of conclusions. — George Santayana