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=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,dab7d920e4340f12 X-Google-Attributes: gid103376,public From: "James A. Squire" Subject: Re: C is 'better' than Ada because... Date: 1996/07/19 Message-ID: <31EFA2FF.5FCF@csehp3.mdc.com>#1/1 X-Deja-AN: 169678483 sender: Ada programming language references: <31e02c32.342948604@netline-fddi.jpl.nasa.gov> comments: Gated by NETNEWS@AUVM.AMERICAN.EDU content-type: text/plain; charset=us-ascii organization: MDA Avionics Tools & Processes mime-version: 1.0 newsgroups: comp.lang.ada x-mailer: Mozilla 2.01 (X11; I; HP-UX A.09.01 9000/715) Date: 1996-07-19T00:00:00+00:00 List-Id: Sandy McPherson wrote: > It depends upon which type of large system you wish to implement. Ever > tried to write an operating system, or a configurable toolkit, which needs > to use callbacks, in Ada? Yeuch!!! A Motif based GUI? Head for the hills! Au Contraire, especially in Ada95. With access-to-subprogram variables and Interfaces.C, the clear choice in my book would be Ada95 every time. > In these areas C or C++ wins every time. Whether this is a problem of Ada > as a language is disputable, as these types of systems are traditionally > the stamping ground of C anyway; however as a great believer in making life > easy for myself, I would stick to C/C++ in these areas. As a great believer in making like easy for future maintainers, I find this shallow reasoning. > If on the other hand you have a bare chip and need to write a complex > embedded system, (and you have a GOOD Ada compiler), then Ada is probably a > better starting point, because there are so many fetures built into the > language which you have to do manually when coding good C. There are tons of Ada advocates in this newsgroup quite skilled at filleting this one into little pieces. I leave it to them. It's not that what you have said here is patently false, it's the hidden implications behind it that are bogus - namely, that THAT is ALL Ada is good for. > The main advantage that C has over Ada is that the compilers are generally > very reliable (because of their small size) and produce efficient machine > code. If you have good PA standards and the correct tools (lint, QAC, > Purify, to name but a few) you can achieve very good results with C, > sometimes better than with Ada. They can also make hash out of this one too. The best I can do is to say that your implication that C compilers are generally more reliable than Ada compilers is unsubstantiated in any way. > The main advantage Ada has over C is its well defined source architecture > and easily employed data abstraction facilities and the tools which are > built into the APSE; these have to be built into a good C program, but a > plonker will bugger this up in Ada as well. Tasking looks like a good idea, > but the implementations can be weak; in fact most spacecraft control > systems I have seen implement their own tasking mechanisms, especially > where they have to respond to hardware interrupts. 1. Very clever. Hypothetically propose an advantage of Ada over C and then dismiss it by appealing to the universal weakness of human nature. Human nature is weak, but C gives it a head start over Ada. 2. Tasking may have improved considerably in Ada95. Besides, what feature of C are you comparing tasking to? -- James Squire mailto:ja_squire@csehp3.mdc.com MDA Avionics Tools & Processes McDonnell Douglas Aerospace http://www.mdc.com/ Opinions expressed here are my own and NOT my company's "Nice shark...pretty shark..." -- Londo, "The Gathering"