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,1042f393323e22da X-Google-Attributes: gid103376,public From: NKSW39B@prodigy.com (Matthew Givens) Subject: Re: Any research putting c above ada? Date: 1997/05/07 Message-ID: <5kopik$1jos@newssvr01-int.news.prodigy.com>#1/1 X-Deja-AN: 239875543 Distribution: world References: <5ih6i9$oct$1@waldorf.csc.calpoly.edu> <5ijb0o$ajc@ns1.sw-eng.falls-church.va.us> <334d3da5.14386594@aplcen.apl.jhu.edu> <2senchydgk.fsf@hpodid2.eurocontrol.fr> <5im3an$3dv@bcrkh13.bnr.ca> <33526cbf.41c6@cca.rockwell.com> <5iusvd$118e@newssvr01-int.news.prodigy.com> <33530e22.5940@worldnet.att.net> <5j18h3$1564@newssvr01-int.news.prodigy.com> <5j8ukr$lu9@nntpa.cb.lucent.com> <5jddr6$mqm@newssvr01-int.news.prodigy.com> <335d880c.324@dynamite.com.au> <5ki7ln$2ttg@newssvr01-int.news.prodigy.com> <336ea9ca.3c92@dynamite.com.au> Organization: Prodigy Services Company 1-800-PRODIGY Newsgroups: comp.lang.ada Date: 1997-05-07T00:00:00+00:00 List-Id: Alan Brain wrote: > >Because winning is not the issue. I'm perfectly willing to believe I'm >wrong - I have been many times in the past - but on this issue I have a >large amount of evidence, as well as personal experience, to show that >Language DOES matter (as does IPSE, possibly even more so). And I'm >looking for more evidence, for or against. And trying (unsuccessfully it >seems) to be rational about it. So... please forgive my poor expression, >and give a serious answer to what was meant to be a serious question, >not some asinine dielectical game ploy. > >Over 2 U. Fair enough. There are enough slurs, accusations, and wild claims that I sometimes jump at shadows. Okay. First, language does matter. I agree. It would be stupid to use Fortran for an interactive, GUI application. It might be possible, but it's not the best choice. C (C/C++) shines in many applications, from system software to graphics intensive games, or any situation requiring small and swift executables. Not to mention portability. C also has it's weaknesses. Among these are steeper learning curves, higher maintenance costs, occasionally inexact floating point math (unless you use a special library or have a good compiler), and so forth. Ada has it's own strengths. Embedded systems, for example. It handles tasking well, although it's not a terribly simple procedure to follow. It enforces strict adherence to things like typing, for example. All in all, a rigid programming environment that is good at what it does best. Ada also has it's weaknesses. We're using it to develop GUI based Oracle applications on a Sun system. The compiled code for the executables is tryuly enormous, in comparison with the executable generated for similar programs using C. On my own initiative, I once wrote the "Hello World" program in both C and Ada on a 3B2 running Unix. This was a while ago, like three or four years. The C app was under 5K, if I remember right, while the Ada app was almost 50K. Ummmm, that's a factor of 10. And I am referring to the amount of memory used by the app, not the size of the file. To be sure, I can run the test again. I'm interested to see what the results are in the current system I'm using. Anyway, size of executables is one problem (I wrote one that had an executable size of almost 600K, and that was just a report generator, not a GUI app). Others include indequate programming tools for the language and tasking problems (Ada tasking won't work with the graphic front-end, no work-around possible, they tell me). Not Ada per se, I understand, but the tools used with the language are important. Another thing about Ada that I deplore is generics. A nice concept, but when the same procedure has eight different bodies, it's a bit confusing to debug (which body had the bug in it???). Or optional parameters. Ugh, I hate the concept. To me, no parameter to a procedure should ever be optional. At any time. But I guess that's just the neanerthal C programmer peeking out. (grin) Now, step back a bit. I said earlier that the language matters, and it does. But so does the programmer. Have you ever known a programmer who did good in one language, but just couldn't handle another? And not because he didn't try, but because the concepts were just not twigging something in his brain. When I was teaching C, I had this problem with Cobol programmers taking the class. If it was their only language, and sometimes even if it wasn't, they had the most HORRIBLE time learning C. That's what I'm talking about. Not everyone can be equally good in both C and Ada. Like me. I program in both, but am infinitely more comfortable in C. The code I turn out is better, and I can do it quicker. Forcing me to use Ada will produce results, but won't be as productive. So. You must pick the language that fits the application and the programmers. Both must be taken into account, although probably not equally. It's getting late, so instead of continuing this essay, I'll shut down and let you respond. If I have more to say I'll say it later. - "What is the speed of dark?" << Iceman >>