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,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.236.105.197 with SMTP id k45mr4824643yhg.19.1407504349028; Fri, 08 Aug 2014 06:25:49 -0700 (PDT) X-Received: by 10.140.25.163 with SMTP id 32mr2793qgt.24.1407504349005; Fri, 08 Aug 2014 06:25:49 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.glorb.com!v10no5428503qac.1!news-out.google.com!j6ni34289qas.0!nntp.google.com!j15no5498896qaq.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Fri, 8 Aug 2014 06:25:48 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=195.182.34.254; posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S NNTP-Posting-Host: 195.182.34.254 References: <932kntuq5rrr.8sumwibqrufn.dlg@40tude.net> <1ohy7vnbntskq$.h139ov04mlxu$.dlg@40tude.net> <1a329b5c-49d6-419d-91a2-ebeebc2d9b3e@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: A bad counterintuitive behaviour of Ada about OO From: Maciej Sobczak Injection-Date: Fri, 08 Aug 2014 13:25:49 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:21554 Date: 2014-08-08T06:25:48-07:00 List-Id: W dniu pi=C4=85tek, 8 sierpnia 2014 10:51:15 UTC+2 u=C5=BCytkownik J-P. Ros= en napisa=C5=82: > 1) I never missed the features that you (and others) argue are missing > to Ada, therefore I don't feel that Ada is "broken" in that aspect I can assure you that almost 100% of C programmers do not miss range checki= ng, for example. :-D For each possible language feature there is at least one programmer who doe= s not miss it. > 2) I am afraid that adding those features would have an adverse effect > on other parts of the language that I do use. Can we try to analyse some of the features in question? > (not specially addressing anybody in particular) > I'm a bit tired of those messages here claiming that Ada is "broken". > Ada is not perfect, it is "only" the best language for software engineeri= ng. > Ada has a big disadvantage: like any sophisticated technic, it needs to > be taught, and it needs to be learned. My general advice is: learn how > to use it; sometimes, you'll have to do things in less straightforward > ways than in other languages, but that's the price to pay for the added > safety. In the end, you'll win. > I mostly agree, except that the "safety" argument is also already worn out.= That is, it is too frequently used to escape from the discussion. If I cla= im that some feature is missing from Ada and you say that it is the price t= o pay for the added safety, then I ask for a proper argument showing that a= given feature would indeed impair the language safety in some way. Without= such demonstration your position is incomplete and therefore unconvincing. In particular (1), I have pointed that that Ada's handling of dispatch duri= ng initialization/finalization is *unsafe*. Obviously I'm not going to buy = the argument that a missing feature here is a price for added safety! In particular (2), the part that took Dmitry's attention (convariance on re= turn type) can be also analysed in terms of language safety. I claim that t= he feature is safe in a) it does not lead to unsafe situations (please some= one correct me on this) and b) the workarounds are ugly and therefore have = potential for introducing bugs. In other words, having this feature would b= e actually safer than not having it. So, again, I'm not convinced by the argument that every Ada problem can be = justified by some virtual added safety. Note: I agree with your claim that Ada is "only" the best language for SE. --=20 Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com