[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: find-library-name fails if file (with no extension) exists.

From: David Kastrup
Subject: Re: find-library-name fails if file (with no extension) exists.
Date: Wed, 22 Nov 2006 01:34:11 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.90 (gnu/linux)

"Juanma Barranquero" <address@hidden> writes:

> On 11/22/06, David Kastrup <address@hidden> wrote:
>> Listing the directory.  Just
>> dir
>> and nothing else.
> Yes. It *preserves* the case. It does not attach any meaning to the
> difference. It just preserves it. That Is Good.

Four legs good, two legs bad.

>> It is your Windows system that throws the file name with the same
>> capitalization with which it was created back at you.
> Yes, a feature. Nice of you to add support to my position.

I did not notice myself doing so.

>> String equality is not a byproduct of "case-sensitive mindsets".
> No. I don't remember talking about string equality, but filenames.

File names are strings.

> I don't know why do you try to convince me that strings and names
> (of files, people, cities, whatever) are the same thing. They are
> not.

But scripts have to deal with file names as _strings_.

>> Tough.  I had, repeatedly so, as maintainer of AUCTeX and other
>> systems.  And I don't even use Windows myself.
> Surely because AUCTeX was written without giving thought to the
> weird idea that there could be case-insensitive systems in the
> world.

Yes, that is the problem with case-insensitive systems: unless you
give special consideration to the possibility of different file names
referring to the same file, things may break.  And since the case
sensitivity may depend on the file system of the local computer or
even of a remote server, there is no way to figure this out without
actually opening files.

If you want to find out whether a specified directory is in load-path,
for example, there is _no_ reliable way to find this out, thanks to
case insensitity.  There is no matching functions that guarantees to
have the same semantics regarding case sensitivity as any particular
file system on any particular operating system.

Is `Émilie' the same file as `émilie' under Windows?  If calling a
person on the street, it will answer to `Emilie' too, likely.  What
about `ἄνθροπος'? Is it the same as `Ἀνθροπος'?  After all, accents
are normally omitted when uppercasing.  Or should that equality be
reserved to `Ἄνθροπος'?

There are languages where some lowercase letters lose information when
converted into uppercase.

Should maybe files be the same if their Soundex rendition is the same?
Wouldn't it be a bad idea for `color' and `colour' to indicate
different file names?

Different characters->different filename is a simple rule, simple to
check, simple to implement, with dependable semantics.

David Kastrup, Kriemhildstr. 15, 44793 Bochum

reply via email to

[Prev in Thread] Current Thread [Next in Thread]