[mod.std.unix] so-called "case sensitive" file names

std-unix@ut-sally.UUCP (Guest Moderator, John B. Chambers) (10/06/86)

Date:     Sat, 4 Oct 86 23:09:29 EDT
From: Doug Gwyn (VLD/VMB) <gwyn@BRL.ARPA>
Subject:  so-called "case sensitive" file names

It seems some people either have forgotten what UNIX is about
or never knew in the first place.  Pathname components are simply
strings of byte-chunked bit patterns.  It is not the operating
system's business to second-guess the user's intentions and
interpret the strings he has chosen to use for filenames in order
to "fix them" on his behalf.  (Some *applications* may elect to
impose restrictions on formats of filenames for files that they
deal with, when appropriate.)

I know several experienced UNIX users who rely on the freedom to
choose meaningful (*to them*) filenames, frequently using both
upper- and lower-case versions of a name concurrently for
different purposes (I do this myself).  If somebody can't cope
with names that are distinguished only by case, then of course
he is free to adopt his own naming procedures.  Automatic
enforcement of unnecessary restrictions by the kernel is not
desirable; that's the sort of thing UNIX was a rebellion against.

I also think this discussion was based on a misconception:
although we removed the note that some implementations may fold
cases in filenames, I can't find anything in the current draft
of the POSIX standard that prohibits this or other constraints
on filenames imposed by an implementation.  Presumably only a
layered implementation on a system that doesn't support
arbitrary characters in filenames would impose any such
restriction, but that's a marketing matter, not a technical one.

Volume-Number: Volume 7, Number 21