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.4 required=5.0 tests=AC_FROM_MANY_DOTS,BAYES_00 autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,28cd155693714664 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-06-18 18:07:12 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!news-out.nuthinbutnews.com!propagator-sterling!news-in.nuthinbutnews.com!psiuk-p2!psiuk-p3!uknet!psiuk-n!news.pace.co.uk!nh.pace.co.uk!not-for-mail From: "Marin David Condic" Newsgroups: comp.lang.ada Subject: Re: Faulty languages and Liability Date: Tue, 18 Jun 2002 09:10:15 -0400 Organization: Posted on a server owned by Pace Micro Technology plc Message-ID: References: <3D0DE5E2.5010904@mail.com> <3D0DF19E.5010805@mail.com> <3D0EC296.8070504@mail.com> NNTP-Posting-Host: dhcp-200-133.miami.pace.co.uk X-Trace: nh.pace.co.uk 1024405817 22557 136.170.200.133 (18 Jun 2002 13:10:17 GMT) X-Complaints-To: newsmaster@news.cam.pace.co.uk NNTP-Posting-Date: 18 Jun 2002 13:10:17 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Xref: archiver1.google.com comp.lang.ada:26333 Date: 2002-06-18T13:10:17+00:00 List-Id: Well, there's certainly a lot of good reasons to learn about and understand "foreign" languages. While I've been an Ada programmer for a long time, I am currently employed doing C and C++ and in the past have used a variety of fairly obscure languages such as Jovial for production work. There's much to be learned, even if your favorite language doesn't change. I don't personally have any problem with C/C++ bashing so long as the criticisms are fair and that one always remembers that there are good reasons - often beyond the technical - why other languages are used. But its nice to have you here to defend C++, so keep it up. (Otherwise, where's the sport in it? :-) As for automatic template instantiations, I know enough about them to see that they have potential problems to cause things to happen behind one's back - which is one of the common complaints here about C/C++ in general. (Type conversions go on without one's knowledge & consent being a common source of errors.) However, I can see your point about how it would make unit conversions less painful. Call it a difference in priorities. Ada wants to be sure that nothing happens without the programmer having deliberately decided to do it. Good for safety - bad for convenience. (automatic instantiation might have made I/O in Ada a whole lot less painful!) C++ gives you convenience - but you sacrifice safety & can start asking for some really hard to detect bugs. (Probably it creates testing difficulties as well if you have really stringent test requirements.)Which is better? It depends on what's important to you. I'd obviously opt for Ada because over the years, I've grown to appreciate the safety & bug reduction characteristics. Anyway, I'm glad I understand what brings you here. Maybe we'll succeed in making a convert out of you. :-) At least there's likely to be a "Don't dismiss Ada so casually..." voice in the C++ community. MDC -- Marin David Condic Senior Software Engineer Pace Micro Technology Americas www.pacemicro.com Enabling the digital revolution e-Mail: marin.condic@pacemicro.com "Hyman Rosen" wrote in message news:3D0EC296.8070504@mail.com... > > I consider myself somewhat of a programming language hobbyist. > I hang out here (as well as on comp.std.c++ and comp.lang.c++.moderated) > because I find the level of discourse, and of the participants, to be high > (yourself included). I don't dislike Ada at all, and I find it entertaining > to defend C++ against unfair claims here, as well as to post "Ada does it > much better this way" on the C++ groups. > > There's also a certain amount of silver bulletness here that's fun to > puncture :-) > > I find it very instructive, as I learn more about Ada, to try to figure > out the essential differences between Ada and C++ and how those differences > affect the expressiveness of the language. For example, I recently had an > epiphany regarding the difference between Ada's explicit generic instantiations > and C++'s automatic template instantiations. It's why you can't do units easily > in Ada, and why local variables can't be template parameters in C++. > > And as C++ moves to adopt concurrent programming (which is almost certain to > happen in the next revision), I'm hoping (and urging) that the people involved > understand how Ada does it, so we don't wind up with a stupid hodgepodge. That > doesn't mean that it should look the same in C++, but they should understand > why certain decisions were made. >