comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Generic-Package Elaboration Question / Possible GNAT Bug.
Date: Tue, 22 Nov 2011 20:15:33 +0100
Date: 2011-11-22T20:15:33+01:00	[thread overview]
Message-ID: <12hfiflyf7pr5$.l3pkpgoid8xt$.dlg@40tude.net> (raw)
In-Reply-To: 4ecbdfdb$0$6629$9b4e6d93@newsspool2.arcor-online.net

On Tue, 22 Nov 2011 18:46:02 +0100, Georg Bauhaus wrote:

> On 22.11.11 17:23, Dmitry A. Kazakov wrote:
> 
>>> Not sure, are you speaking about DbC (TM)?
>> 
>> I don't care about trade marks and definitions given by reference
>> manuals...
> 
> Frankly, doing so in some way will help discussing things.

Any discussion should be based on the meaning of words.

Discussions about words are uninteresting to me.

>>> (b) A debugging ("design", "specification", bla-bla) aid leading
>>>     towards formally proven components where such proofs are possible.
>> 
>> I cannot decipher this, sorry.
> 
> Meyer: "Programming is a human activity".
> Programmers are led towards a solution during the process of programming.
> Depending on the characteristics of the process, then,
> programmers will produce different results.

I see no word "debugging" there.

> DbC (TM), as a characteristic of a process, leads to products
> that lend themselves to proving them correct more than others,
> provided this is possible.

I suppose drinking coffee does that as well. CDD [caffeine driven design]
(TM). As for randomly raised exceptions from dynamic checks, I doubt that
leads to better products. I my experience at least 40% of my debugging
efforts in Ada 95 was spent on catching accessibility checks faults. Ada
2005 improved that greatly. To me this is a vivid example why dynamic
checks are evil.

>>> "An exception is the element's inability to fulfil its contract, for any
>>> reason: a hardware failure has occurred, a called routine has failed, a
>>> software bug makes it impossible to satisfy the contract."
>> 
>> An exception is a program state. It is not an inability. The behavior in an
>> exceptional state is contracted, at least in Ada it is.
> 
> OK, erroneous execution.

If the program has a bug its execution is erroneous. Is it what you want to
say? So?

>>> Without those dynamic checks, we wouldn't ever notice a failure?
>> 
>> How would you notice a failure to notice?
> 
> Really does not matter. There is no need to require forall-qualification
> of every aspect of DbC(TM) when it is not meant to be in a program
> if and only if the program (including hardware) is proven to be
> 100% such-and-such.  Impractical.

Which then? You have to specify the failures you are going to notice. Once
you do qualify them, you would easily be able to avoid them. Note that all
the buzz is about noticing something unanticipated. That is impossible,
period. Anticipated failures are not bugs, they are states.

>> The software which behavior is unknown shall never be executed.
> 
> But this is impossible, in general!

I see the point, since it is impossible do right, you are going to do it
wrong. I am not arguing for or against your or Meyer's motivations. I only
state that it is wrong. 

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2011-11-22 19:15 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-19 21:14 Generic-Package Elaboration Question / Possible GNAT Bug Shark8
2011-11-19 22:12 ` Robert A Duff
2011-11-19 23:36   ` Shark8
2011-11-20  9:55     ` Dmitry A. Kazakov
2011-11-21  7:25       ` AdaMagica
2011-11-21  8:43         ` Dmitry A. Kazakov
2011-11-21 10:25           ` AdaMagica
2011-11-21 13:08           ` Robert A Duff
2011-11-21 13:50             ` Dmitry A. Kazakov
2011-11-21 19:41               ` Robert A Duff
2011-11-22  8:21                 ` Dmitry A. Kazakov
2011-11-21 20:40               ` J-P. Rosen
2011-11-22  8:29                 ` Dmitry A. Kazakov
2011-11-22 10:25                   ` Georg Bauhaus
2011-11-22 14:32                     ` Dmitry A. Kazakov
2011-11-22 15:02                       ` Georg Bauhaus
2011-11-22 16:23                         ` Dmitry A. Kazakov
2011-11-22 17:46                           ` Georg Bauhaus
2011-11-22 19:15                             ` Dmitry A. Kazakov [this message]
2011-11-22 21:03                               ` Randy Brukardt
2011-11-22 21:26                                 ` Dmitry A. Kazakov
2011-11-23  0:07                                   ` Georg Bauhaus
2011-11-23  8:44                                     ` Dmitry A. Kazakov
2011-11-23  9:32                                       ` Simon Wright
2011-11-23  9:56                                         ` Dmitry A. Kazakov
2011-11-23 11:03                                           ` Georg Bauhaus
2011-11-23 11:13                                             ` Dmitry A. Kazakov
2011-11-23 11:25                                               ` Georg Bauhaus
2011-11-23 13:14                                                 ` Dmitry A. Kazakov
2011-11-23 13:59                                                   ` Georg Bauhaus
2011-11-23 14:43                                                     ` Dmitry A. Kazakov
2011-11-23 16:10                                                       ` Georg Bauhaus
2011-11-23 19:51                                                         ` Dmitry A. Kazakov
2011-11-24  0:59                                                           ` Georg Bauhaus
2011-11-24  9:14                                                             ` Dmitry A. Kazakov
2011-11-23 15:12                                           ` Simon Wright
2011-11-23 19:53                                             ` Dmitry A. Kazakov
2011-11-24  8:07                                               ` Simon Wright
2011-11-24  9:27                                                 ` Dmitry A. Kazakov
2011-11-24 10:49                                                   ` Georg Bauhaus
2011-11-24 13:14                                                     ` Dmitry A. Kazakov
2011-11-24 14:31                                                       ` Georg Bauhaus
2011-11-24 16:32                                                         ` Dmitry A. Kazakov
2011-11-24 11:15                                                 ` Brian Drummond
2011-11-24 18:12                                                   ` Simon Wright
2011-11-24 23:52                                                     ` Brian Drummond
2011-11-23 10:35                                         ` Brian Drummond
2011-11-23  9:54                                       ` Georg Bauhaus
2011-11-23 10:30                                         ` Dmitry A. Kazakov
2011-11-23  4:08                                 ` Yannick Duchêne (Hibou57)
2011-11-23  4:11                                 ` Yannick Duchêne (Hibou57)
2011-11-22 23:52                               ` Georg Bauhaus
2011-11-23  9:04                                 ` Dmitry A. Kazakov
2011-11-23 11:15                                   ` Georg Bauhaus
2011-11-23 13:30                                     ` Dmitry A. Kazakov
2011-11-23 14:42                                       ` Georg Bauhaus
2011-11-23 19:48                                         ` Dmitry A. Kazakov
2011-11-24  1:36                                           ` Georg Bauhaus
2011-11-24 10:52                                             ` Dmitry A. Kazakov
2011-11-24 11:30                                               ` Georg Bauhaus
2011-11-24 12:52                                                 ` Dmitry A. Kazakov
2011-11-24 14:45                                                   ` Georg Bauhaus
2011-11-25  9:54                                                     ` Dmitry A. Kazakov
2011-11-24  7:46                                           ` stefan-lucks
2011-11-24  3:07                           ` Shark8
2011-11-24  6:07                             ` Yannick Duchêne (Hibou57)
2011-11-24 10:10                             ` Dmitry A. Kazakov
2011-11-24 11:15                               ` Georg Bauhaus
2011-11-24 22:48                               ` Shark8
2011-11-25  9:25                                 ` Yannick Duchêne (Hibou57)
2011-11-26 21:59                                   ` Shark8
2011-11-25  9:47                                 ` Dmitry A. Kazakov
2011-11-25 10:15                                   ` Georg Bauhaus
2011-11-25 10:51                                     ` Yannick Duchêne (Hibou57)
2011-11-25 15:45                                   ` Georg Bauhaus
2011-11-25 16:05                                     ` Yannick Duchêne (Hibou57)
2011-11-25 16:19                                     ` Yannick Duchêne (Hibou57)
2011-11-23  3:49                         ` Yannick Duchêne (Hibou57)
2011-11-23  8:50                           ` Georg Bauhaus
2011-11-23  9:45                             ` Yannick Duchêne (Hibou57)
2011-11-23 10:55                               ` Georg Bauhaus
2011-11-23  3:20             ` Yannick Duchêne (Hibou57)
2011-11-23 15:05               ` Robert A Duff
2011-11-21 17:00 ` Adam Beneschan
2011-11-23  3:13 ` Yannick Duchêne (Hibou57)
2011-11-24  3:47   ` Shark8
replies disabled

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