>Several OS's Perl supports prefer case insensitive file systems
>(obscure ones, like Windows and MacOS ;).
They're broken. We know that.
>On top of that, currently "use Shell" and "use shell" both mean to use
>SHELL.PM (or shell.pm, Shell.pm, sHeLl.pM) on case insensitive file
>systems.
That's completely false.
use Shell;
means
BEGIN {
require Shell;
Shell::->import();
}
whereas
use shell;
means
BEGIN {
require shell;
shell::->import();
}
Get it? The package import is mysterious broken.
The solution is this: Perl is not a case-careless programming language;
it is a case-sensitive one from top to bottom, and cavalier mangling of
case in Perl programs due to horrid precedent on brain-dead-by-misdesign
systems should be neither encouraged, nor, in fact, suppported.
--tom