Zach, when ASDF reads a system name from a symbol, it takes the symbol name and down cases it. So loading :foo is the same as loading "foo".

So I don't think this should break anything for you, unless quicklisp has some systems with camel-cased names.

Also, according to the hyperspec, a logical pathname can only contain upper case letters, so it can't distinguish files whose names differ by case alone. (Cf.19.3.1).

For these reasons, it makes sense to treat ASDF system names as case-insensitive. If you have case-sensitive names they may work for some users, and not for others.

Best,
R

On February 25, 2014 5:43:10 PM CST, Zach Beane <xach@xach.com> wrote:
"Robert P. Goldman" <rpgoldman@sift.info> writes:

Faré wrote:
Should non-lowercase strings be either forbidden or case-converted?
That's a backward incompatible change that would need to be tested
with cl-test-grid before it's committed — and even then might affect
unpublished or proprietary code by other users.

I think there's a strong incentive to make such a backward-incompatible
change right now:

It would break Quicklisp.

such systems are *already* broken in at least one
sense -- they can not be used correctly with logical pathnames,

Not true. A logical pathname can map to any physical pathname.

nor can they be referred to by symbols.

They are already referred to by symbols whenever someone does
(asdf:load-system :foo).

Zach


--
Sent from my Android device with K-9 Mail. Please excuse my brevity.