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 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!aplcen!aplcomm!uunet!trwacs!erwin From: erwin@trwacs.UUCP (Harry Erwin) Newsgroups: comp.lang.ada Subject: Re: vs Ada - Don't forget the prime directive! Message-ID: <311@trwacs.UUCP> Date: 17 Jun 91 12:21:30 GMT References: <9106151802.AA16989@zach.fit.edu> Organization: TRW Systems Division, Fairfax VA List-Id: Ada is clearly more maintainable. It is also much easier to prove Ada code correct (because it avoids programming constructs that result in non-commutative parallel code). Barry Boehm has noted, however, that there are major types of software that Ada is very poor at implementing (simulations, parallel processing in open environments, test generation code, anything involving pointers to functions, anything that approaches the full generality of a Turing Machine-- although you can still implement a Turing Machine in Ada-- most AI applications). Al Perlis took much the same position, although he was markedly less enamored with Ada. As a performance engineer, I find Ada unattractive. If the conversion ratio for C is 5 MLI per source statement, then Fortran generally comes in at 6-7 MLI and Ada at 10-12. And these source statements are no more powerful than C statements; there's just a lot more bounds checking, and other overhead, going on. As long as applications press the capabilities of the host hardware, alternatives to Ada will be needed (and not just for the applications listed above where Ada is clumsy at best). Another factor is that it's very easy to write inefficient code in Ada. The machine architecture is deliberately hidden from the coder, and the natural implementations are usually the most expensive. These factors come together in code that will never be as efficient as the corresponding C code and that requires 10-20 times as many CPU cycles until tuned during integration and test. It's hard to overcome those handicaps. Harry Erwin erwin@trwacs.fp.trw.com --The usual disclaimers. -- Harry Erwin Internet: erwin@trwacs.fp.trw.com