comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Ada and software testing
Date: Mon, 12 Jul 2021 18:41:28 +0200	[thread overview]
Message-ID: <schrbk$9kc$1@gioia.aioe.org> (raw)
In-Reply-To: 5bc2434a-6784-47d6-ba66-50edff4f80f0n@googlegroups.com

On 2021-07-12 18:14, Gautier write-only address wrote:

> You can combine the power of fuzzing with the power of Ada's strong typing, implying standard Ada run-time checks (e.g. range checks), plus a compiler's own checks (e.g. GNAT's validity checks).

Before the Dark Age of Computing, testing was not arbitrary. You knew 
things about your implementation and even, God forbid, foresaw some of them.

E.g. if the implementation was "linear" (the case for all buffer 
overflow stuff) you would simply test the end points (extremes) and one 
point inside instead of wasting time on anything else.

Of course, to make such considerations and techniques work, the programs 
needed to be designed very differently, which was one of the motivations 
behind Ada constrained subtypes, ranges etc.

This is also one of the reasons why unbounded strings, dynamic memory 
allocation etc must be avoided as you leave some upper bounds undefined 
making lot of things non-testable.

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

  reply	other threads:[~2021-07-12 16:41 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-12  0:49 Ada and software testing Paul Rubin
2021-07-12  8:40 ` Dmitry A. Kazakov
2021-07-14 19:56   ` Paul Rubin
2021-07-12 16:14 ` Gautier write-only address
2021-07-12 16:41   ` Dmitry A. Kazakov [this message]
2021-07-14 19:32   ` Paul Rubin
2021-07-14 19:51     ` Dmitry A. Kazakov
2021-07-14 20:02       ` Paul Rubin
2021-07-15  7:27         ` Dmitry A. Kazakov
2021-07-16 10:01 ` G.B.
2021-07-16 10:21   ` Paul Rubin
2021-07-28 15:28     ` Paul Butcher
replies disabled

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