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,971aa11c293c3db1 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-07-20 12:51:08 PST Path: archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!newsfeeds.belnet.be!news.belnet.be!psinet-eu-nl!psiuk-p4!uknet!psiuk-n!news.pace.co.uk!nh.pace.co.uk!not-for-mail From: "Marin David Condic" Newsgroups: comp.lang.ada Subject: Re: Ada The Best Language? Date: Fri, 20 Jul 2001 15:10:09 -0400 Organization: Posted on a server owned by Pace Micro Technology plc Message-ID: <9j9vmh$c5p$1@nh.pace.co.uk> References: <5be89e2f.0107170838.c71ad61@posting.google.com> <5be89e2f.0107180235.726d46a8@posting.google.com> <9j3rrd$g71$1@s1.read.news.oleane.net> <5be89e2f.0107181300.4b4e93d7@posting.google.com> <3B57195E.A3A3FED@home.com> <9j93u6$1ua8$1@norfair.nerim.net> <3B586A17.862BA84D@home.com> <9j9s3t$kn8$1@wanadoo.fr> NNTP-Posting-Host: 136.170.200.133 X-Trace: nh.pace.co.uk 995656209 12473 136.170.200.133 (20 Jul 2001 19:10:09 GMT) X-Complaints-To: newsmaster@pace.co.uk NNTP-Posting-Date: 20 Jul 2001 19:10:09 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:10370 Date: 2001-07-20T19:10:09+00:00 List-Id: Oh, you'll pay - just not with CPU cycles. :-) Consider it this way: Its better to have the checks there by default (and by virtue of the language - not by virtue of someone being "nice" and checking manually) and removing them from the small percentage of code that may be performance critical (via pragma Supress) than to have them NOT there by default (and requiring that the programmers "roll their own", rather than have them by virtue of the language) and try to intersperse them in the code as you start discovering you have mysterious errors. I can't even begin to tell you how often my hide has been saved by having compiletime & runtime checks in place in Ada that exposed eggregious errors that would have been very hard to track down without them. When I wear the embedded/realtime hat, I understand the desirability of getting rid of the checks (in some cases) but I'm glad they are there for me to decide to get rid of rather than have to insert them myself *after* I start discovering problems. Now if C++ had some sort of compile-time switch that could be thrown that said "Insert Checks", and the language actually had syntax/semantics that provided information to check (ranges on numbers, array constraints, etc.) then I'd think that C++ and Ada were at least equivalent in this area. However, since there aren't any activatable checks and the language doesn't provide nearly as much safety information anyway, I find this a major liability. MDC -- Marin David Condic Senior Software Engineer Pace Micro Technology Americas www.pacemicro.com Enabling the digital revolution e-Mail: marin.condic@pacemicro.com Web: http://www.mcondic.com/ "Bertrand Augereau" wrote in message news:9j9s3t$kn8$1@wanadoo.fr... > > The best features of C++ still leave numerous faults in the final product: > > > > - No overflow checks > > - In some cases, no divide by zero checks (this feature may need to be > > enabled on your platform). > > "You don't have to pay for what you don't use" is the principle.