Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!orchid!rbutterworth From: rbutterworth@orchid.UUCP Newsgroups: comp.lang.c Subject: Re: MAJOR ANSI C FLAW (my opinion, of course) Message-ID: <11151@orchid.waterloo.edu> Date: Tue, 13-Oct-87 11:47:54 EDT Article-I.D.: orchid.11151 Posted: Tue Oct 13 11:47:54 1987 Date-Received: Sat, 17-Oct-87 12:58:24 EDT References: <1132@gilsys.UUCP> Organization: U of Waterloo, Ontario Lines: 29 Keywords: external names, length, bogosity to the max Yes, the 6 case-insignificant character limit on external names is a real pain. However, it is not any compiler-writer that insists on this limit, it is existing operating systems. Many systems have been around for a long time with existing standards for libraries with this limit built into it. And while it may seem unreasonable to tell someone that is going to write a C compiler, C library, or C program that they must be aware of this limit if they want to run on a particular operating system, it would be even more unreasonable to tell the vendor and users of an operating system that they are going to have to change all their existing compilers, loaders, libraries, and programs to take a different format of library simply to accommodate an "improved" version of a C compiler. I'm sure the typical reaction would be: "Forget it. We'll stick with the compilers we have now. Who needs that crap?" Imagine you've written a new improved BASIC interpreter and you want to sell it to IBM. You go up to them and say: "Here's our wonderful new BASIC. All you have to do if you want to use it is change your definition of card-image file from 80-columns to be 96-columns instead, change all your existing programs and libraries accordingly, and let all your customers know that they have to change too if they want their programs to continue working." Good luck.