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.7 required=5.0 tests=BAYES_00,INVALID_DATE, MSGID_SHORT,REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!wuarchive!brutus.cs.uiuc.edu!zaphod.mps.ohio-state.edu!tut.cis.ohio-state.edu!pt.cs.cmu.edu!sei!jjs From: jjs@sei.cmu.edu (Jeffrey Stewart) Newsgroups: comp.lang.ada Subject: Re: Ada PIWG Keywords: SOOOOOOOEYY! Message-ID: <5177@c.sei.cmu.edu> Date: 1 Dec 89 21:18:24 GMT References: <14062@grebyn.com> Reply-To: jjs@sei.cmu.edu (Jeffrey Stewart) Organization: Software Engineering Institute, Pittsburgh, PA List-Id: In article <14062@grebyn.com> ted@grebyn.com (Ted Holden) writes: >The literature and every conversation I have ever had with real-world >people who have been forced to actually attempt to USE Ada have totally >convinced me of the failure of this project. By the same token, C++ >could very nearly, if not entirely, fill the bill. Well Ted, I guess you never talked to me or the group I worked with at Hercules Defense Electronics. We have just finished a project to implement all of the control software plus some signal-processing software, in Ada, for a Millimeter-Wave radar seeker for the Maverick missile. Its about 7500 lines of code, based on an object-oriented design, does signal-processing, provides dual-loop control for the antenna, provides mission control for the entire missile, plus some other things. And it does it at 600Hz, on a 10MHz 80286. There is NO ASSEMBLER. The goal was a complete Ada artifact, and the goal was achieved. We wanted a complete Ada artifact because part of the goal was for the implementation to be as portable as possible. We achieved this, in part, by rewriting some of the system requirements to be event, rather than timing, driven. There was zero loss of functionality and performance due to these changed requirements. We had NO problems with the language. We did have one problem with the compiler generating incorrect code for a representation clause, but this was a compiler implementation problem which was easily fixed by the vendor. Projects that DO have a problem with Ada tend to fall into the following categories : The classic "10 pounds of stuff into a 5 pound bag" problem. You won't solve this with C either. Many times, the requirements stack the deck against you. Period. Less than production-quality compilers. I'll admit this was a problem, and is less so every day. Whiners who will use every excuse to blame the language rather than the design. The two ARE different, design and implementation, don'cha know? Many of these projects fail due to poor design, regardless of implementation language. I refuse to assign percentages to these categories. Let that be an exercise for the reader. By the way Ted, part of the rationale for Ada was that the techniques and languages in current use (mid 70's) would be inadequate for the million-plus SLOC systems anticipated for the 90's. What are the successful C-language projects of this size? I like Ada not because it is Ada, but because, in my estimation, it allows the best use to-date of all the software engineering principles I know and have seen used effectively. Most C code still looks like line-noise to me. To sum up, Ada DOES work, for its intended purposes. Maybe you should consider becoming an equal opportunity basher, i.e., cite some C/C++ failures as well. (And don't tell me there aren't any. Your use of absolute terms is part of what detracts from your credibility.) Jeff