comp.lang.ada
 help / color / mirror / Atom feed
From: Maciej Sobczak <see.my.homepage@gmail.com>
Subject: Re: A bad counterintuitive behaviour of Ada about OO
Date: Fri, 8 Aug 2014 06:25:48 -0700 (PDT)
Date: 2014-08-08T06:25:48-07:00	[thread overview]
Message-ID: <cc1e7f8d-e1f6-4e37-833c-da745e5a1a3c@googlegroups.com> (raw)
In-Reply-To: <ls2326$44l$1@dont-email.me>

W dniu piątek, 8 sierpnia 2014 10:51:15 UTC+2 użytkownik J-P. Rosen napisał:

> 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 checking, for example. :-D

For each possible language feature there is at least one programmer who does 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?

> <rant> (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 engineering.
> 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.
> </rant>

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 claim that some feature is missing from Ada and you say that it is the price to 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 during 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 return type) can be also analysed in terms of language safety. I claim that the feature is safe in a) it does not lead to unsafe situations (please someone correct me on this) and b) the workarounds are ugly and therefore have potential for introducing bugs. In other words, having this feature would be 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.

-- 
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com

  reply	other threads:[~2014-08-08 13:25 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-05 20:09 A bad counterintuitive behaviour of Ada about OO Victor Porton
2014-08-05 20:58 ` Simon Wright
2014-08-05 21:06   ` Victor Porton
2014-08-05 21:51     ` Niklas Holsti
2014-08-05 22:13       ` Victor Porton
2014-08-05 22:35   ` Victor Porton
2014-08-05 23:25     ` Adam Beneschan
2014-08-05 20:59 ` Dmitry A. Kazakov
2014-08-05 21:07   ` Victor Porton
2014-08-05 22:39     ` Shark8
2014-08-05 21:11   ` Victor Porton
2014-08-06  7:26     ` Dmitry A. Kazakov
2014-08-07  7:41       ` Maciej Sobczak
2014-08-07  8:50         ` Dmitry A. Kazakov
2014-08-08  7:54           ` Maciej Sobczak
2014-08-08  8:14             ` Dmitry A. Kazakov
2014-08-08 13:06               ` Maciej Sobczak
2014-08-08 13:22                 ` Dmitry A. Kazakov
2014-08-08 22:32                   ` Randy Brukardt
2014-08-09 16:11                   ` Maciej Sobczak
2014-08-09 16:48                     ` Dmitry A. Kazakov
2014-08-10 20:55                       ` Maciej Sobczak
2014-08-11  7:41                         ` Dmitry A. Kazakov
2014-08-11  7:58                           ` Maciej Sobczak
2014-08-11  8:23                             ` Dmitry A. Kazakov
2014-08-12  7:50                               ` Maciej Sobczak
2014-08-11 11:35                             ` G.B.
2014-08-08 22:26                 ` Randy Brukardt
2014-08-08  8:34             ` Shark8
2014-08-08 12:59               ` Maciej Sobczak
2014-08-08 22:37                 ` Randy Brukardt
2014-08-08 22:53                   ` Jeffrey Carter
2014-08-07  8:58         ` J-P. Rosen
2014-08-07  9:40           ` Dmitry A. Kazakov
2014-08-07 11:17             ` J-P. Rosen
2014-08-07 12:28               ` Dmitry A. Kazakov
2014-08-07 13:34                 ` J-P. Rosen
2014-08-07 16:10                   ` Dmitry A. Kazakov
2014-08-07 18:14                     ` Robert A Duff
2014-08-07 19:41                       ` Dmitry A. Kazakov
2014-08-07 20:53                         ` Robert A Duff
2014-08-08  7:43                           ` Dmitry A. Kazakov
2014-08-08  8:18                             ` Shark8
2014-08-08  7:45                     ` J-P. Rosen
2014-08-08  8:04                       ` Dmitry A. Kazakov
2014-08-08  8:55                         ` J-P. Rosen
2014-08-08  9:13                           ` Dmitry A. Kazakov
2014-08-08 10:01                             ` J-P. Rosen
2014-08-08 10:53                               ` Dmitry A. Kazakov
2014-08-08 10:56                                 ` Victor Porton
2014-08-08 12:00                                 ` J-P. Rosen
2014-08-08 13:11                                   ` Dmitry A. Kazakov
2014-08-08 13:53                                     ` J-P. Rosen
2014-08-08 20:23                                       ` Dmitry A. Kazakov
2014-08-07 20:29                   ` Shark8
2014-08-08  7:49                     ` J-P. Rosen
2014-08-08  8:12                       ` Shark8
2014-08-08  8:26                         ` Dmitry A. Kazakov
2014-08-08 11:10                           ` Shark8
2014-08-08 11:20                             ` Dmitry A. Kazakov
2014-08-08 19:34                               ` Shark8
2014-08-08 20:23                                 ` Dmitry A. Kazakov
2014-08-07 15:03           ` Jeffrey Carter
2014-08-08  7:48           ` Maciej Sobczak
2014-08-08  8:51             ` J-P. Rosen
2014-08-08 13:25               ` Maciej Sobczak [this message]
2014-08-08 13:34                 ` J-P. Rosen
2014-08-08 13:52                   ` Dmitry A. Kazakov
2014-08-08 14:21                     ` J-P. Rosen
2014-08-08 20:23                       ` Dmitry A. Kazakov
2014-08-08 22:08                     ` Randy Brukardt
2014-08-08 22:18                 ` Randy Brukardt
2014-08-06  4:50 ` Per Sandberg
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox