Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!ncar!ico!vail!rcd From: rcd@ico.ISC.COM (Dick Dunn) Newsgroups: comp.sw.components Subject: Re: Are "production" programming languages are dinosaurs? Summary: cheap shots at C Message-ID: <16160@vail.ICO.ISC.COM> Date: 4 Oct 89 19:23:03 GMT References: <929@scaup.cl.cam.ac.uk> <30@venice.SEDD.TRW.COM> Organization: Interactive Systems Corp, Boulder, CO Lines: 48 rang@cs.wisc.edu (Anton Rang) writes: >...scc@cl.cam.ac.uk (Stephen Crawley) says: > > Given mature languages like "C", there should not be much incentive > >currently, to use Ada. > > C is mature? There isn't even a standard for it yet!... This is a cheap shot. C has been developed in the natural sequence, namely "try it first, then standardize it." The fact that Ada was standardized before there was even an honest working compiler for it--let alone any useful experience with the language--is such a massive act of monstrous stupidity that even now, years later, I (and most other programming-lang- uage folks) have trouble believing it was done that way. The standardization of C also followed an arduous, but very open, pro- cess...in which the issues surrounding the language were exposed to serious (and sometimes seemingly endless!) debate. The Ada standard, on the other hand, was lambasted as ill-advised, ill-considered, premature, etc., on various counts and in various ways by leaders of the profession and by at least one professional society (ACM). The response from the DoD was, essentially, "Thank you for your concerns. Damn the torpedoes; full speed ahead." The Ada standardization process is something to be ashamed of. The refusal (and inability) to let the language evolve is precisely the reason you're seeing comments in this newsgroup that Ada is behind the times and falling farther behind. As for maturity...C IS "mature" in the sense of being heavily-used and well-understood for a long time--not "mature" in the sense of having a well-established, hidebound bureaucracy to protect it. >...Besides, it > is missing a LOT of features very useful for large projects: nested > packages, information hiding, etc. It doesn't even have nesting in > the namespace (writing two functions called "sort_array" generally > leads to trouble). Information hiding happens (and is intended to happen) at the "module" (which essentially means "source file") level in C. Frankly, experience has indicated that this one level of nesting and hiding hasn't caused as much trouble as people outside C might think. It's simplistic, perhaps, but it's also simple. Nested procedures are more expensive, particularly in the face of procedure variables--which are both useful and commonly used in C. -- +---------+ Dick Dunn rcd@ico.isc.com ico!rcd (303)449-2870 | In this | 4th annual MadHatterDay [10/6/89]: | style | A Thousand Points of Madness |__10/6___|