From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=BAYES_00,INVALID_DATE, MSGID_SHORT autolearn=no autolearn_force=no version=3.4.4 Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!cmcl2!rutgers!bellcore!faline!ulysses!sfmag!sfsup!mpl From: mpl@sfsup.UUCP (M.P.Lindner) Newsgroups: comp.lang.ada,comp.lang.c,sci.space,sci.space.shuttle Subject: Re: "C" vrs ADA Message-ID: <1937@sfsup.UUCP> Date: Wed, 26-Aug-87 11:40:57 EDT Article-I.D.: sfsup.1937 Posted: Wed Aug 26 11:40:57 1987 Date-Received: Sat, 29-Aug-87 06:10:26 EDT References: <1065@vu-vlsi.UUCP> <2231@cbmvax.UUCP> <36@sarin.UUCP> Distribution: na Organization: AT&T-IS, Summit N.J. USA Summary: OK, but... Xref: mnetor comp.lang.ada:583 comp.lang.c:3944 sci.space:2711 sci.space.shuttle:287 List-Id: [ the following are excerpts - see the original articles for context ] In article <36@sarin.UUCP>, eric@sarin.UUCP writes: > In article <2231@cbmvax.UUCP>, daveh@cbmvax.UUCP (Dave Haynie) writes: > > > The biggest problems with Ada is the massive size of its compiler and the > > verbosity of it's language. I guess if you really like Pascal or Modula2, > > you might adjust, but if you're used to C, it might take some getting used > > to. > > My suggesting is > that you take an open mind to the Ada vs C issue, because it is not > as Mr. Haynie suggests. OK, although I must confess a love of "C". Most of this love comes from being able to write a program in minutes, then refine it. C is concise, clean, and unrestrictive. I'm a Pascal convert, so I've used languages which enforced typing. > I do not see > how the "size" of a compiler matters in producing code that is efficient, > that is easily maintainable, and documentable. It doesn't. The comment was that the size of the compiler makes it harder to verify the *compiler*. > If you are used to C, you > may have trouble adjusting to the strong typing of the language. Ada is > a verbose language (if rich can be stated in any other words). But it is that > richness that makes the language so useful. True, but I mistrust excess complexity in languages that try to be "all things to all developers". > Many customers (non DOD or NATO) are requesting Ada because of the > software engineering that it dictates. Ada is not just a computer language, > it is a software engineering methodology. > The compilers today are becoming efficient. OK, I'll buy that. The methodology of the Ada environment is sound, if a little restrictive. I do take exception, however to the statements that Ada is an "object oriented" language. Yes, it is, but it was implemented no better than that of C++. Example: Try to make a generic merge sort which can sort floats and integers. Unless this has been fixed since I learned Ada, it can't be done! The reason I was given is a generic type can only assume assignment and equality. If we add constraints, we must specify either integral types or floating types. Little inconsistancies make life hell for programmers, as well as conflicting with the stated intent of the methodology. > After coding > this tool, we determined that some inefficiencies dictated a design change. > This design change proliferated itself through the entire system. The coding > for this change took about a man-month, but the debug and reintegration > phase took only two days. The system ran as before, must more efficient > due to the design change. Had the code been written in C, this would not > have happened. Oh, and did you implement it in C, or is this the same kind of closed minded opinionism you attacked earlier? I claim the ease of reintegration is due to methodology, and the same methodology is applicable to many languages, not just Ada. Not only that, but had the projract been done in C, a "quickie" implementation of the algorithms could have been implemented, which might have shown the problem before it was proliferated throughout the entire system (not to mention that fact that a design should not "proliferate" through an entire system if the design methodology is sound). > Many of the errors that were interjected by the engineers > were due to spelling, wrong variable selection, or unhandled boundary > conditions. These errors would not have come out during C compilation. > They would have manifested themselves in various (or nefarious) bugs. These > interjected errors were found (80% approx) during compilation of the code. Again, I musst take exception, since a good methodology would include linting code, which would indeed have uncovered these errors (and do it without imposing extra restraints on the developers). > My suggestion is that you learn software engineering, object oriented > design, and the use of software tools. Then learn Ada. I have studied software engineering, object oriented, design, and the use of software tools. Then I learned Ada. I still have nightmares. Mike Lindner attunix!mpl