Bob Ammerman wrote: > From: "Olin Lathrop" > > No they didn't. Both Algol and Pascal predated C. The concept of strong > > type checking had already been tried and its advantages understood. The > > only reason for deliberately weakening type checking is that the designers > > of C found it irritating. The only reason they would think that is if > > they > > didn't "get it" and were irresponsible programmers. > > While I agree that K&R didn't follow the state of the art when they designed > "C", I think a major reason for not doing strict type checking is that it > allowed them to make the compiler much simpler (for example treating any > non-zero value as true). Remember that "C" (like Unix) was originally > designed to run on "small" machines, for some truly interesting values of > "small". Historically C evolved out of Martin Richards's BCPL compiler and the derivative B compiler. This was at a time that one of the hot language research topics was simple effective machine independent languages. The other active projects at the time were forth, macro processor work for machine independent software ML1 STAGE2 FLUB M4 some of the researcher were Doug McIlroy, Peter Brown, Bill Waite and Poole who wrote STAGE2. There was a lot of other things going on at the same time Calvin Moores wrote trac as a thesis and lost out by a few months (to Doug McIlroy) the independent discovery of the power of recursive macros. There was other processor independent recursive functional languages lisp. LISP was ported to the PDP 1 as a proof of concept. (I have the PDP1 source if anyone is interested) In the processor independent low level languages C won because it was a better implementation language in more cases than rest. Ron Cain showed that C could be ported simply to small processors. Richie had a goal of creating an implementation language and did what he set out to do. Richie was not an "irresponsible programmer" For the last 20 years ISO has been standardizing C. It has been a full debate. Creating an implementation language to replace C will technically be a significant task. ISO WG14 has about a 1000 internal papers that document language design issues for C alone. Each of these represents a design consideration that has to be addressed. Many of C's choices can argued and alternative choices selected. Regards, -- Walter Banks Byte Craft Limited http://www.bytecraft.com -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist