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,f40056d015b2ae33 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news.glorb.com!newscon02.news.prodigy.net!prodigy.net!newsdst01.news.prodigy.net!prodigy.com!postmaster.news.prodigy.com!newssvr27.news.prodigy.net.POSTED!4988f22a!not-for-mail From: Newsgroups: comp.lang.ada References: <4737291e$0$27064$4d3efbfe@news.sover.net> <1194882790.326239.115730@22g2000hsm.googlegroups.com> <1194883941.855761.192050@22g2000hsm.googlegroups.com> Subject: Re: Suggestions for topics in an Ada course? X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.3138 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 X-RFC2646: Format=Flowed; Original Message-ID: NNTP-Posting-Host: 70.134.126.233 X-Complaints-To: abuse@prodigy.net X-Trace: newssvr27.news.prodigy.net 1194889118 ST000 70.134.126.233 (Mon, 12 Nov 2007 12:38:38 EST) NNTP-Posting-Date: Mon, 12 Nov 2007 12:38:38 EST Organization: SBC http://yahoo.sbc.com X-UserInfo1: SCSYASBEQJV]SQ@[EZOD]_\@VR]^@B@MCPWZKB]MPXHBTWICYFWUQBKZQLYJX\_ITFD_KFVLUN[DOM_A_NSYNWPFWNS[XV\I]PZ@BQ[@CDQDPCL^FKCBIPC@KLGEZEFNMDYMKHRL_YYYGDSSODXYN@[\BK[LVTWI@AXGQCOA_SAH@TPD^\AL\RLGRFWEARBM Date: Mon, 12 Nov 2007 17:38:38 GMT Xref: g2news1.google.com comp.lang.ada:18322 Date: 2007-11-12T17:38:38+00:00 List-Id: "Hyman Rosen" wrote in message news:1194883941.855761.192050@22g2000hsm.googlegroups.com... > > Ada's type safety, modules, and visibilty rules are not all that > different from those in languages like C++ or Java. Sure, it may be the case > that Ada's way is better or safer (not knowing Ada well, I can't say for > sure) The visibility rules of Ada, along with the type system, is far more strict and much more thoroughly defined than in C++ or Java. In addition, the rules for access types (pointers) prevent many of the accidents that can occur with C or C++. These are really not arguable if one knows enough about all three languages. Ada is also structurally unique. I recently read a paper on separate compilation written by some scholars from Europe in which they went on about C++ and Java, but completely overlooked Ada. I wrote a short essay on the subject and sent it to them, receiving a reply to the effect, "We didn't know ... " The architecture of a large-scale Ada program is much easier to follow than that of a C++ program, and the production C++ I have seen is usually pretty hard to follow. As we all know, the real test of the value of a programming language is not the ease with which we can compose programs, but the ease with which we can "maintain" them. Of course, we don't really maintain software in the sense of the physical world. Rather, we adapt it to changing circumstances. The structure of Ada, the readability of the programs, largely due to the structural model and the rules for design and construction, seem to make Ada easier to understand by someone who has never seen the code before. Granted, someone could write readable C++ code, and some people do. But both C++ and Java seem to encourage shortcuts that result in code that is all but obscure. One of my favorite columns in C++ Report was that last page, "Obfuscated C++." It was great fun trying to figure out the solution from one issue to another. I cannot imagine anyone writing a column called "Obfuscated Ada." Finally, my impression of C++, after many years of having to deal with it in academia and industry is that it is highly error-prone. The ease with which a C++ programmer can introduce difficult to spot mistakes is far greater than I have ever seen with Ada programmers of similar skill and education. So I have often wondered why anyone using a language that is inherently error-prone would expect a result that is error-free. The choice of C++ for certain tasks is not due to the superiority of the language, but due to the fact that there are more libraries for those tasks in C++, and a larger base of programmers experienced in C++. The popularity of C++ owes little to its being a better language, but more to the circumstances of the industry when it was introduced, and not a little to the incompetence of those charged with managing the Ada mandate when it was in place. Richard Riehle