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: a07f3367d7,73cb216d191f0fef X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII-7-bit X-Received: by 10.224.172.200 with SMTP id m8mr9158880qaz.0.1364344734410; Tue, 26 Mar 2013 17:38:54 -0700 (PDT) Path: k8ni27033qas.0!nntp.google.com!border1.nntp.dca.giganews.com!border4.nntp.dca.giganews.com!border2.nntp.dca.giganews.com!nntp.giganews.com!newsgate.cuhk.edu.hk!goblin2!goblin.stu.neva.ru!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Is this expected behavior or not Date: Fri, 22 Mar 2013 21:51:45 +0100 Organization: cbb software GmbH Message-ID: References: <99929f93-b80f-47c3-8a37-c81002733754@googlegroups.com> <87ec4b1d-f7cd-49a4-8cff-d44aeb76a1ad@googlegroups.com> <78103a2f-5d19-4378-b211-1917175d5694@googlegroups.com> <3p6p8k0yfly7.ctazdw7fc5so$.dlg@40tude.net> <1jtvzi1v65aqm.1k5ejsveno59f.dlg@40tude.net> <1hvv2kd9smnfx.6spgz9thd1mh$.dlg@40tude.net> <1raubw1sk48ca$.69rdgczvnnf.dlg@40tude.net> <2qwq2cdeuvhu$.qtnb8zyhuob9$.dlg@40tude.net> <39766694-798c-483e-b068-f3f88a00cac4@googlegroups.com> Reply-To: mailbox@dmitry-kazakov.de NNTP-Posting-Host: XRUMb5xlbonTNodERpEXEw.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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Date: 2013-03-22T21:51:45+01:00 List-Id: On Fri, 22 Mar 2013 13:10:18 -0700 (PDT), Shark8 wrote: > On Friday, March 22, 2013 10:07:51 AM UTC-6, Dmitry A. Kazakov wrote: >> On Thu, 21 Mar 2013 18:27:22 -0500, Randy Brukardt wrote: >> >>> But I still think you are trying too hard to avoid run-time checks. >> >> If I weren't, I would use Perl, not Ada. I favor Ada exactly because it >> gives me static checks. It is sad to see Ada drifting towards run-time / >> dynamic-typing junk. > > Runtime-typing and dynamic-typing are two different things, no? Possibly, depends on how you define it. Anyway all boils down to run-time checks (faults) vs. compile-time checks (errors/bugs). A failed run-time check is a program state to anticipate. More such checks you do, more states you have, more difficult it becomes to design tests covering these states, or just to keep in mind that such states exist and are reachable. I don't buy run-time checks unless *proven* that compile-time check would be impossible to have. And this is not an optimization issue. > Ada has always had run-time checking: Sure. [ It is trivial to put up an example where no compile-time check can exist, e.g. function Puzzle return Positive is begin if HALT (p) then return -1; else return 1; end if; end Puzzle; It is a halting problem to prove that Puzzle does not raise Constraint_Error. ] -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de