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.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,ea5071f634c2ea8b X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.68.0.170 with SMTP id 10mr5425472pbf.2.1322077721801; Wed, 23 Nov 2011 11:48:41 -0800 (PST) X-FeedAbuse: http://nntpfeed.proxad.net/abuse.pl feeded by 88.191.131.2 Path: lh20ni10126pbb.0!nntp.google.com!news1.google.com!news4.google.com!proxad.net!feeder1-2.proxad.net!nntpfeed.proxad.net!88.191.131.2.MISMATCH!news.chainon-marquant.org!usenet.pasdenom.info!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Generic-Package Elaboration Question / Possible GNAT Bug. Date: Wed, 23 Nov 2011 20:48:42 +0100 Organization: cbb software GmbH Message-ID: <1wyybnjde2yxq.1w37r5182t0xt.dlg@40tude.net> References: <7bf9bc32-850a-40c6-9ae2-5254fe220533@f29g2000yqa.googlegroups.com> <3snehoqgs8ia$.1nobjem6g6hx6$.dlg@40tude.net> <128rdz2581345$.c4td19l7qp9z$.dlg@40tude.net> <16ipwvpdavifr$.17bxf7if7f6kh$.dlg@40tude.net> <4ecb78b1$0$6643$9b4e6d93@newsspool2.arcor-online.net> <1iofgbqznsviu$.phvidtvxlyj4$.dlg@40tude.net> <4ecbb96e$0$6581$9b4e6d93@newsspool3.arcor-online.net> <4ecbdfdb$0$6629$9b4e6d93@newsspool2.arcor-online.net> <12hfiflyf7pr5$.l3pkpgoid8xt$.dlg@40tude.net> <4ecc35b8$0$7628$9b4e6d93@newsspool1.arcor-online.net> <4eccd5d2$0$6637$9b4e6d93@newsspool2.arcor-online.net> <14p8llstxrtci$.18hb93fkpteuv$.dlg@40tude.net> <4ecd0652$0$6582$9b4e6d93@newsspool3.arcor-online.net> Reply-To: mailbox@dmitry-kazakov.de NNTP-Posting-Host: ARmOcGB+2dBIwZUEYVS5Gg.user.speranza.aioe.org Mime-Version: 1.0 X-Complaints-To: abuse@aioe.org User-Agent: 40tude_Dialog/2.0.15.1 X-Notice: Filtered by postfilter v. 0.8.2 Xref: news1.google.com comp.lang.ada:19092 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Date: 2011-11-23T20:48:42+01:00 List-Id: On Wed, 23 Nov 2011 15:42:25 +0100, Georg Bauhaus wrote: > On 23.11.11 14:30, Dmitry A. Kazakov wrote: > >>>> So it is the debugging driven design you are advocating for. Designing by >>>> fixing bugs. Nice, very nice... exactly the thing I don't want for Ada. >>> >>> Specifications have bugs. >> >> That is irrelevant to the discussion about designing programs. If you want >> to switch to designing specifications then what do run-time assertions have >> to do with that? > > Run-time assertions will tell when there probably is something wrong Tell whom and what? That reminds me the notorious "message not understood." It is contradicts to basic principles of engineering, but I don't want to go into it. >>> ADTs without invariants? >> >> Invariant is an implementation detail > > No, there is no implementation in a DbC contract. Great! >>> Subprograms of unknown effect, >> >> You confuse interface and implementation. > > I call a subprogram because it has an effect. Is this unusual? > In order to choose the right subprogram, I need to know its > effect. That is exactly why contracts cannot be dynamic. Dynamic means statically undecidable. How are you going to know anything about the subprogram, if that is unknown until run-time? One nice thing about inconsistencies is that they corrupt the whole system of reasoning. You cannot presume "for practical reason" that 2+2=5, because that will ruin everything else. >>>>> There is no right or wrong in most programs. >>>> >>>> You cannot build safe software on false premises. >>> >>> Almost all programs have a number of things that can go wrong, >> >> Program code cannot GO wrong, it IS either wrong or not, here and now. > > No, we don't know whether an executable program is right or wrong, > for almost all programs. It is not about anybody's knowledge. A program is correct or not independently on whether you or anybody else knows that. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de