comp.lang.ada
 help / color / mirror / Atom feed
From: aek@vib.usr.pu.ru (Alexander Kopilovitch)
Subject: Re: Boeing and Dreamliner
Date: 30 Jun 2003 18:08:18 -0700
Date: 2003-07-01T01:08:18+00:00	[thread overview]
Message-ID: <e2e5731a.0306301708.1bf4fec2@posting.google.com> (raw)
In-Reply-To: wdILa.23988$N%6.1953@nwrdny02.gnilink.net

Hyman Rosen wrote:

>Richard Riehle wrote:
>> And those issues directly support the folly of even thinking about using
>> C++ for this aircraft.
>
>Unsurprisingly, I disagree. You're talking about a situation where every
>arithmetic operation in the code was carefully scrutinized. I'm sure that
>in the cases were protection was left in the Ariane 4 code it did not
>consist of allowing an Ada exception to be raised on overflow, but rather
>coding in such a way that a correct numeric result would be produced. I
>don't see why such scrutiny would not result in equally safe C++ code.

There is vague but powerful thing - "expectations". In Ada world it is
natural to expect that a component is suited and perhaps optimized for the
particular purpose, unless otherwise it explicitly stated. The situation in
C++ world is often quite opposite: it is common to expect that a class or
class library provides some kind of acceptable/reasonable behaviour for some
generic range of applications, and that behaviour must be overridden if/when
we have have specific requirements.

Therefore typical C++ programmer will not scrutinize the component unless he
either has specific requirements or is alarmed by something - just because
he *expects* from the component a resonable generic behaviour. And when he
is given an Ada component, his habits - his usual expectations may well be
in effect in the area where they are certainly invalid.

Then to the habit of looking into source code as into a guide for documentation.
It is also a habit of C++ world. Just one real example from Symbian OS C++ SDK
(for SonyEricsson P800 smartphone): for preventing a dialog to be closed on
application deactivation you should implement ShutL() method of CEikDialog
class - this is said in the special separate page of SDK docs. But there is
no ShutL() method in the documentation of the CEikDialog class, as well as
in the documentation for its ancestors. Well, let's look into source code -
CEikDialog class definition - and yes, we see there method ShutL() - it is
private (so it was not included in documentation) but virtual (so it may be
overriden).

Thus C++ programmer often looks into source code, expecting to find there some
clues for documentation.

So, even the C++ habits may lead to disasters when applied in Ada world --
because expectations in these two worlds are quite different. And it is possible
that exactly this thing was a contributing factor in Ariane 5 case.



Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia



  parent reply	other threads:[~2003-07-01  1:08 UTC|newest]

Thread overview: 130+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-20  3:18 Boeing and Dreamliner Robert Love
2003-06-20 10:29 ` Larry Kilgallen
2003-06-21  2:20   ` Mark A. Biggar
2003-06-23 10:45     ` Robert Kaiser
2003-06-23 11:43       ` Larry Kilgallen
2003-06-23 12:21         ` Martin Dowie
2003-06-23 12:23           ` Larry Kilgallen
2003-06-23 13:02             ` Martin Dowie
2003-06-23 13:02         ` Robert Kaiser
2003-06-20 14:44 ` Matt Brenneke
2003-06-20 17:23   ` Wojtek Narczynski
2003-06-21  4:28     ` rleif
2003-06-22  3:56       ` Hyman Rosen
2003-06-22  9:15         ` Preben Randhol
2003-06-23 18:00           ` Mike Silva
2003-06-22 11:51         ` Larry Kilgallen
2003-06-22 13:37           ` Marin David Condic
2003-06-22 15:06             ` James Rogers
2003-06-22 15:52               ` Dmitry A. Kazakov
2003-06-22 18:18                 ` Tino Goertemoeller
2003-06-23  3:26               ` John R. Strohm
2003-06-23  5:54                 ` Robert I. Eachus
2003-06-23 10:12                   ` Understanding and Teaching: Who may teach Ada? Georg Bauhaus
2003-06-24  1:34                     ` Robert I. Eachus
2003-06-24 12:13                       ` Georg Bauhaus
2003-06-25  2:59                     ` John R. Strohm
2003-06-25  4:44                       ` Wesley Groleau
2003-06-25  5:55                         ` Anders Wirzenius
2003-06-25 14:03                       ` Georg Bauhaus
2003-06-23 21:08                   ` Boeing and Dreamliner Alexander Kopilovitch
2003-06-24  3:16                     ` Robert I. Eachus
2003-06-23 15:40                 ` Wesley Groleau
2003-06-23  5:04               ` rleif
2003-06-22 18:07           ` Frank J. Lhota
2003-06-23  9:32           ` AG
2003-06-23 11:12             ` Larry Kilgallen
2003-06-27 16:30             ` Richard Riehle
2003-06-22 15:10         ` Vinzent Hoefler
2003-06-22 18:22         ` Robert I. Eachus
2003-06-23 18:24           ` Mike Silva
2003-06-24  2:13           ` Alexander Kopilovitch
2003-06-24  2:35             ` Hyman Rosen
2003-06-24  5:22               ` Mike Silva
2003-06-24  6:14                 ` Hyman Rosen
2003-06-24  6:38                   ` tmoran
2003-06-24 13:08                     ` Hyman Rosen
2003-06-24 17:59                       ` tmoran
2003-06-24 18:01                       ` Mike Silva
2003-06-25 11:50                         ` Marin David Condic
2003-06-24 10:56                   ` Preben Randhol
2003-06-24 13:04                     ` Hyman Rosen
2003-06-24 20:54                   ` Pascal Obry
2003-06-24 12:06                 ` Marin David Condic
2003-06-24 13:12                   ` Hyman Rosen
2003-06-24 14:20                     ` Larry Kilgallen
2003-06-24 14:33                     ` Vinzent Hoefler
2003-06-24 20:37                     ` Alexander Kopilovitch
2003-06-25 11:58                     ` Marin David Condic
2003-06-24  7:10               ` Robert I. Eachus
2003-06-24  7:35                 ` Hyman Rosen
2003-06-24 17:29                   ` Robert I. Eachus
2003-06-27 17:15                     ` Richard Riehle
2003-06-27 17:31                       ` Warren W. Gay VE3WWG
2003-06-28  1:27                         ` Wesley Groleau
2003-06-28  6:32                           ` Robert I. Eachus
2003-06-27 17:38                       ` Preben Randhol
2003-06-28  2:18                       ` Alexander Kopilovitch
2003-06-24 16:35                 ` Warren W. Gay VE3WWG
2003-06-24 10:48               ` Preben Randhol
2003-06-24 13:16                 ` Hyman Rosen
2003-06-24 14:49                   ` Preben Randhol
2003-06-24 22:48                   ` Wesley Groleau
2003-06-25  0:41                     ` Hyman Rosen
2003-06-25 10:28                       ` Dmitry A. Kazakov
2003-06-25 21:15                         ` Robert I. Eachus
2003-06-26  2:30                           ` Alexander Kopilovitch
2003-06-27 17:19                           ` Richard Riehle
2003-06-25 18:00                       ` Mike Silva
2003-06-24  6:22             ` Robert I. Eachus
2003-06-24 13:21               ` Hyman Rosen
2003-06-24 16:38                 ` 
2003-06-24 18:00                 ` Robert I. Eachus
2003-06-26  2:00               ` Alexander Kopilovitch
2003-06-26 19:12                 ` Robert I. Eachus
2003-06-27  2:21                   ` Alexander Kopilovitch
     [not found]         ` <ts6hs-vk4.ln1@beastie.ix.netcom.com>
2003-06-22 18:59           ` Simon Wright
2003-06-23 18:20         ` Pascal Obry
2003-06-25  8:08         ` Thierry Lelegard
2003-06-27 16:24         ` Richard Riehle
2003-06-27 16:31           ` Hyman Rosen
2003-06-27 18:08             ` Robert I. Eachus
2003-06-27 19:00               ` Hyman Rosen
2003-06-28  0:33             ` Alexander Kopilovitch
2003-06-29  6:54               ` Hyman Rosen
2003-06-29  8:30                 ` AG
2003-06-29 16:06                 ` Chad R. Meiners
2003-06-29 20:20                   ` Hyman Rosen
2003-06-30 13:50                     ` Alexander Kopilovitch
     [not found]                     ` <t9i7t-0i3.ln1@beastie.ix.netcom.com>
2003-07-01 11:55                       ` Marin David Condic
2003-07-02 15:02                         ` rleif
2003-07-03  7:38                       ` Robert I. Eachus
2003-06-29 16:56                 ` Alexander Kopilovitch
2003-06-29 20:22                   ` Hyman Rosen
2003-06-29 21:09                     ` Larry Kilgallen
2003-06-29 21:19                       ` Hyman Rosen
2003-06-29 21:31                         ` Larry Kilgallen
2003-06-29 21:39                           ` Hyman Rosen
2003-06-30  0:07                             ` Berend de Boer
2003-06-29 18:26                 ` Richard Riehle
2003-06-29 20:45                   ` Hyman Rosen
2003-06-30 15:55                     ` Warren W. Gay VE3WWG
2003-07-04  0:21                       ` Dave Thompson
2003-07-04 16:42                         ` Warren W. Gay VE3WWG
2003-07-01  1:08                     ` Alexander Kopilovitch [this message]
2003-07-03 16:43                       ` Warren W. Gay VE3WWG
2003-07-01  1:14                     ` Richard Riehle
2003-07-01  5:31                       ` Hyman Rosen
2003-07-01  7:30                         ` Dmitry A. Kazakov
2003-07-01 12:57                           ` John R. Strohm
2003-07-04  3:56                             ` Wesley Groleau
2003-07-04  5:05                               ` Robert I. Eachus
2003-06-21 12:55   ` Pascal Obry
2003-06-20 19:59 ` Jeffrey Carter
2003-06-20 22:40   ` Mark Lorenzen
2003-06-20 21:21     ` Jeffrey Carter
2003-06-21  4:28     ` rleif
2003-06-21  8:05     ` Preben Randhol
2003-06-21 10:32       ` Bobby D. Bryant
2003-06-21 10:44         ` Preben Randhol
2003-06-23 16:57           ` Warren W. Gay VE3WWG
replies disabled

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