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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,fc52c633190162e0 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!out01b.usenetserver.com!news.usenetserver.com!in04.usenetserver.com!news.usenetserver.com!newscon02.news.prodigy.net!prodigy.net!newsdst01.news.prodigy.net!prodigy.com!postmaster.news.prodigy.com!newssvr23.news.prodigy.net.POSTED!4988f22a!not-for-mail From: Newsgroups: comp.lang.ada References: <1172144043.746296.44680@m58g2000cwm.googlegroups.com> <1172161751.573558.24140@h3g2000cwc.googlegroups.com> <546qkhF1tr7dtU1@mid.individual.net> <5ZULh.48$YL5.40@newssvr29.news.prodigy.net> <1175215906.645110.217810@e65g2000hsc.googlegroups.com> <1175230700.925143.28490@n59g2000hsh.googlegroups.com> <6XbPh.4025$u03.802@newssvr21.news.prodigy.net> <0fbqi9tncx.fsf@hod.lan.m-e-leypold.de> Subject: Re: why learn C? X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-RFC2646: Format=Flowed; Original Message-ID: <_%0Qh.2315$H_5.308@newssvr23.news.prodigy.net> NNTP-Posting-Host: 70.134.100.216 X-Complaints-To: abuse@prodigy.net X-Trace: newssvr23.news.prodigy.net 1175493754 ST000 70.134.100.216 (Mon, 02 Apr 2007 02:02:34 EDT) NNTP-Posting-Date: Mon, 02 Apr 2007 02:02:34 EDT Organization: AT&T http://yahoo.sbc.com X-UserInfo1: Q[OQB\CEBZUWSSD[N[O@_WH@YR_B@EXLLBWLOOAFQATJUZ]CDVW[AKK[J\]^HVKHG^EWZHBLO^[\NH_AZFWGN^\DHNVMX_DHHX[FSQKBOTS@@BP^]C@RHS_AGDDC[AJM_T[GZNRNZAY]GNCPBDYKOLK^_CZFWPGHZIXW@C[AFKBBQS@E@DAZ]VDFUNTQQ]FN Date: Sun, 1 Apr 2007 23:03:22 -0800 Xref: g2news1.google.com comp.lang.ada:14717 Date: 2007-04-01T23:03:22-08:00 List-Id: "Markus E Leypold" wrote in message news:0fbqi9tncx.fsf@hod.lan.m-e-leypold.de... > > > The way Richard presents things distorts reality somewhat: He gives > the impression that there is a number of peple out there, which know > C++ and Ada equally well, start projects with an absolutely clean > slate (no development environment, no code base on which to build, no > corporate guide lines) and then -- with seeing eyes -- decide for C++ > and against Ada, but still expect completely error free software. > Good observation. Well-phrased and thoughtful. I realize that few people know both languages well. I also know that projects rarely start with a clean slate. There are certainly circumstances where C++ is the preferred option. These usually are environments where everyone is already well-trained and experienced in C++. Moving to a new language should never be taken lightly. One reason C++ has been so successful is that it is familiar with those who originally programmed in C. I have counseled people to avoid new languages on many occasions. On one occasion, a three-star general asked me whether he should convert all his Fortran code to Ada. My answer was, No. On another occasion, I was asked about what to do about COBOL in a shop that had hundreds of thousands of code in COBOL. "Should we convert to Java?" My answer was again an emphatic No! In my own experience, I have had the opportunity to program in many different languages on a lot of different kinds of projects. I have been doing this for well over forty years. I realize that every language has its good points and bad points. Some have more bad points than others. When I look at C++, versus the alternatives, I see a language that should be retired from service at the earliest opportunity. It is dangerous, messy, and error-prone. It served its purpose for a while. It was considered useful for its alleged efficiency. This issue is largely moot. At present, C++ is nothing more than an object-oriented universal Assembler. From time to time it is still useful. However, newer languages have come into existence and C++ is something of a buggy-whip equivalent. If we are to move the profession forward to a more engineering discipline, the buggy-whip needs to be replaced with more appropiate tools. Functional languages such as OCAML are showing their advantages, where they are used. Eiffel continues to be an excellent alternative when one needs an OOP language with a bit more dependabilty. And Ada continues to evolve well, even though it still needs more evolution in subsequent iterations. C++, on the other hand, seems to be evolving new features with the principle intent of fixing things in the existing language that are broken. With all the better alternatives available, I can only wonder why anyone would deliberately choose C++. Of particular concern, for me, is the nitwits who have chosen C++ over Ada for military weapon systems. This is absolutely horrible. I deal regularly with the young military personnel who are going to have to rely on the software in those systems, and it frightens me that we are sending them into combat with equipment programmed in language that is inherently error-prone. Richard Riehle