From ... Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!bloom-beacon.mit.edu!newsswitch.lcs.mit.edu!sunqbc.risq.qc.ca!newshub.northeast.verio.net!verio!kibo.news.demon.net!demon!newsfeed.belnet.be!news.belnet.be!news.brutele.be!nmaster.kpnqwest.net!nnum.kpnqwest.net!EU.net!nreader1.kpnqwest.net.POSTED!not-for-mail Newsgroups: comp.lang.lisp Subject: Re: How to keep case in UNIX pathnames References: Mail-Copies-To: never From: Erik Naggum Message-ID: <3231497465354155@naggum.net> Organization: Naggum Software, Oslo, Norway Lines: 30 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 27 May 2002 14:11:15 GMT X-Complaints-To: newsmaster@KPNQwest.no X-Trace: nreader1.kpnqwest.net 1022508675 193.71.199.50 (Mon, 27 May 2002 16:11:15 MET DST) NNTP-Posting-Date: Mon, 27 May 2002 16:11:15 MET DST Xref: archiver1.google.com comp.lang.lisp:33982 * Aleksandr Skobelev | Or, may be, what is a proper way to use logical-pathnames with mixed-case | filenames under UNIX? You need to understand that the point with logical pathnames is to have a file-system--independent file naming convention that makes porting your application to a different system not require any internal changes. This is a fantastically useful thing. If Unix had had logical pathnames, Unix administration, setup, package installation, etc, would have been simple and straightforward. Instead, we have tons of different directories that need to be kept in sync, and packages have compiled-in pathnames. After I grokked logical pathnames, I have emulated or implemented them wherever I have gone. Global file systems are simply not good at what they attempt to do, and hardwiring directories into programs is simply wrong. The mapping from logical to physical pathnames is strictly one-way. The idea is to work within a known and safe universe of names and directories that are always portably mappable to physical pathnames. As long as you live within that universe, you have solved a number of problems that are hard even to understand are solvable without such a (standard) mechanism. So you construct the logical file system with a small number of logical hosts and name all your files within it/them, and then arrange for the physical world to have the physical files and directories to which they are mapped. Going the other way around is simply misguided. -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief. 70 percent of American adults do not understand the scientific process.