Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!bloom-beacon!think!barmar From: barmar@think.COM (Barry Margolin) Newsgroups: comp.lang.c Subject: Re: Explanation of "Case-sensitive" Message-ID: <39708@think.UUCP> Date: 25 Apr 89 20:01:33 GMT References: <13174@dartvax.Dartmouth.EDU> <175100004@hobbiton> Sender: news@think.UUCP Reply-To: barmar@kulla.think.com.UUCP (Barry Margolin) Organization: Thinking Machines Corporation, Cambridge, MA Lines: 28 In article <175100004@hobbiton> fieland@hobbiton.prime.com writes: >I think that the reason C is case-sensitive is that UNIX is case-sensitive, >and C was used to write the UNIX kernel. And the reason Unix is case-sensitive is that it was modeled after Multics, which is also case-sensitive. I suspect that the reason Multics was made case-sensitive was that it seemed more modern. At the time, many computer terminals and printers were uppercase-only, but the new-fangled IBM 2741 terminal had recently come out and it provided lowercase. Therefore, they decided to take advantage of the availability of lowercase and allow case to be used to distinguish things. What probably would have made more sense would have been case-preserving in things like file names; this means that case is insignificant in lookups, but when you create a file (or user, or whatever) the case you use is remembered (this is the scheme used in the Macintosh file system). But at the time there was little experience with dual-case systems, so they probably chose the simplest-seeming scheme. This is getting beyond the scope of C.... Barry Margolin Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar