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.6 required=5.0 tests=BAYES_05,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!seismo!mimsy!aplcen!cp1!sarin!eric From: eric@sarin.UUCP (Eric Beser sys admin) Newsgroups: comp.lang.ada,comp.lang.c,sci.space,sci.space.shuttle Subject: Re: "C" vrs ADA Message-ID: <36@sarin.UUCP> Date: Sat, 22-Aug-87 17:09:38 EDT Article-I.D.: sarin.36 Posted: Sat Aug 22 17:09:38 1987 Date-Received: Wed, 26-Aug-87 05:12:43 EDT References: <1065@vu-vlsi.UUCP> <2231@cbmvax.UUCP> Distribution: na Organization: Sarin Inc., Owings Mills, Md. Summary: not true ... not true Xref: mnetor comp.lang.ada:554 comp.lang.c:3891 sci.space:2679 sci.space.shuttle:279 List-Id: 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. I am the Ada Technology Coordinator for a major corporation. Part of my responsibility is to evaluate and select compilers, evaluate Ada runtime environments, and to guide our Ada insertion effort. Mr. Haynie having just written this "Ada Bashing" deserves a proper response. His response was filled with old information, no longer valid today. My suggesting is that you take an open mind to the Ada vs C issue, because it is not as Mr. Haynie suggests. Working in an industrial environment, and having used Ada, I do not see how the "size" of a compiler matters in producing code that is efficient, that is easily maintainable, and documentable. 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. > > As for where it's used, mainly DOD I'd guess. It certainly isn't used much, > if any, in commercial or industrial sectors. C's the language for most of > these, though your Fortran experience could come in handy in some heavy > duty scientific fields (most machines have Fortran compilers that code better > than existing C compilers, but since there's more work being done on C, I > wouldn't be surprised if this is changing). Ada is certainly general purpose > enough to be used elsewhere if you have access to a compiler for it, and it > generally has alot of things built into it that you have to add to C language > (like tasks, exceptions, etc.). I get irked when I hear this. This may have been true a year ago, but no longer. 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. Many customers who originally requested C are now asking for Ada. The compilers today are becoming efficient. There are some imperfections however, and all is not rosy. But there are compilers for the 68020 that produce well optimized code. There are compilers for the 1750A military processor that produced adequate code, although not as well optimized. Toolsets are now usable. In fact, you can buy a validate Ada compiler for the IBM PC-XT (Meridian) that does not require extra memory, is somewhat expensive (700.00), but not the $3000.00 that the leading pc vendor charges. Let me give an example from actual experience. I am part of a large Ada project that is building a tool for use by our engineers (industrial, commercial, as well as DOD contracts). 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. 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. An additional 15% were found on first startup of the system by constraint and unhandled exceptions. The remainder were found on integration. My suggestion is that you learn software engineering, object oriented design, and the use of software tools. Then learn Ada. You will find that the C will come in handy when you have to try to understand what some engineer did so to do an Ada redesign. Eric Beser EBESER@ADA20 - arpa {mimsy}!aplcen!cp1!sarin!eric - usenet