comp.lang.ada
 help / color / mirror / Atom feed
From: Stefan Lucks <lucks@th.informatik.uni-mannheim.de>
Subject: Re: Standard Library Interest?
Date: Fri, 10 Oct 2003 11:28:51 +0200
Date: 2003-10-10T11:28:51+02:00	[thread overview]
Message-ID: <Pine.LNX.4.44.0310100857070.32767-100000@th.informatik.uni-mannheim.de> (raw)
In-Reply-To: <uoewql7cg.fsf@nasa.gov>

On 9 Oct 2003, Stephen Leake wrote:

> Stefan Lucks <lucks@th.informatik.uni-mannheim.de> writes:

> >   1. a unit test for the package and
> 
> I find Aunit to be a good unit test framework (see
> http://savannah.nongnu.org/projects/grace/ for a working example).

You missed my point! 

Think of a "customer" (i.e., any programmer who wants to "with" the
library) and call her A. A somehow (perpaps by downloading it from the web
site) gets her hands on the source code of some library packages. The very
first thing she will (or at least should) do is to ask each package: "Are
you okay?" ("Is this package compiling under my compiler and running on my
target platform under my target platform's configuration?")

The best way to answer this question is to run the entire battery of unit
tests which have been used by the author of the library package. I would 
want to provide A with a simple button to fire the test battery. And this 
button should be at the same place and have the same shape and color for 
all packages of the standard library!

It is a non-issue for A, which test framework has been used by the author 
of the library package. 


> >   2. checking the current version number of package

> We could require each top-level package to provide a Version function,
> that returns a string. 

I had been thinking of that. However, natural sting comparison is 
different from comparing version numbers:
     "14.3" < "3.14"   (Ouch!)

> Also follow the Gnu convention of including that string in the tar.gz
> file name for distributions.

I agree, this is a good convention. But my point is: Allow A to check 
version numbers automatically, either at compile time or (early) when 
testing. The Ada compiler is an extremely powerful tool, so use it. 

> > 	some.weird.package_name.Full_Self_Test(0);
> 
> The unit test code does _not_ belong in the package itself. If it is,
> it would be included in every delivered executable; major waste of
> space. It should be in a child package.

OK, so use

	some.weird.package_name.Self_Test.Full_Self_Test(0);

instead. (However, I don't quite buy your wast-of-space reason. Any 
decent linker is able to throw away unused subprograms, right?)

> But it's really not reasonable to define unit tests at this level.
> Many unit tests require auxiliary packages, which should _not_ be
> children (see SAL for examples). Providing a Makefile that runs the
> tests and produces a pass/fail is much more reasonable.

Didn't Lady Ada free us from using makefiles? :-)

And who said that the auxiliary packages should be children? Just "with" 
them, when implementing your tests. If this does not compile because the 
"with"ed toolbox is not available, A has no chance to do these tests by 
herself anyway, even if she'd run make. 

(I can imagine some special cases and exceptional circumstances, where
your test needs external files, system- or platform-specific information,
...  This prevents providing the full test battery, i.e. Full_Self_Test
can't be implemented. Sometimes, even a reduced test battery could be
useful -- call it Main_Self_Test instead of Full_...)


> Hmm. I guess you mean one package depends on specific versions of
> other packages, 

I think, you missed my point again. Think as a "customer" A.

Consider an application with-ing some library package X version y.z. It
has compiled fine, passed all tests, and perhaps it has even passed some
code-reviews. Now it is compiled again, either for a different platform, 
or under a different compiler, or it has been modified/extended, ... 

There is an implementation of X available, and its version number is v(X).

If v(X) = y.z, then fine!

If v(X) < y.z, this may indicate great trouble. (However, perhaps A can 
download and install a more recent version of X.)

A's reaction on v(X) > y.z, may depend on her trust in the
upward-compatibility of the development of X ... At least for saftety- or
security-critical programs (and that is still the area where Ada is best
for), it would be prudent to check for things that may be broken by using
a version of X which is newer than y.z. The least thing I'd do would be to
read the changes-log of X.

My point is, I don't want A to *manually* compare y.z with v(X). (There
may be many Xs, and thus many pairs (v(X),y.z).) It is much better to do
these tests automatically, either at compile time or at least (early) at
test time. The Ada compiler is a great tool, so use it to simplify your 
life! :-)


> Just an example of the kinds of discussions an integrated library
> committee will be having ...

Ackn!

-- 
Stefan Lucks      Th. Informatik, Univ. Mannheim, 68131 Mannheim, Germany
            e-mail: lucks@th.informatik.uni-mannheim.de
            home: http://th.informatik.uni-mannheim.de/people/lucks/
------  I  love  the  smell  of  Cryptanalysis  in  the  morning!  ------





  parent reply	other threads:[~2003-10-10  9:28 UTC|newest]

Thread overview: 285+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-05  0:09 Standard Library Interest? chris
2003-10-05  1:38 ` Robert I. Eachus
2003-10-05 11:44   ` chris
2003-10-05 15:16   ` Marin David Condic
2003-10-05 16:40     ` Robert I. Eachus
2003-10-05 19:22     ` Martin Dowie
2003-10-06 13:12       ` Marin David Condic
2003-10-06 17:09         ` Martin Dowie
2003-10-06 23:34           ` Marin David Condic
2003-10-07  0:23             ` Stephane Richard
2003-10-07 12:42               ` Marin David Condic
2003-10-07 13:17                 ` Stephane Richard
2003-10-07 17:17                   ` Marin David Condic
2003-10-07 17:42                     ` Larry Hazel
2003-10-07 19:36                       ` Stephane Richard
2003-10-07 20:31                         ` Stephen Leake
2003-10-07 21:56                           ` Stephane Richard
2003-10-08  1:11                             ` Marin David Condic
2003-10-08 16:07                               ` Martin Krischik
2003-10-10  4:38                                 ` Marin David Condic
2003-10-10 14:37                                   ` Stephen Leake
2003-10-10 16:24                                     ` Martin Dowie
2003-10-11 14:16                                       ` Marin David Condic
2003-10-12  1:30                                         ` Martin Dowie
2003-10-12  2:46                                           ` Marin David Condic
2003-10-11 14:07                                     ` Marin David Condic
2003-10-14 14:20                                       ` Stephen Leake
2003-10-14 19:14                                         ` Marin David Condic
2003-10-14 19:27                                           ` Stephen Leake
2003-10-15 12:27                                             ` Marin David Condic
2003-10-15 12:42                                               ` Marin David Condic
2003-10-10 16:46                                   ` Martin Krischik
2003-10-10 18:00                                     ` Stephane Richard
2003-10-12 11:19                                       ` Martin Krischik
2003-10-12 14:48                                         ` Stephane Richard
2003-10-11 14:22                                     ` Marin David Condic
2003-10-09 10:50                               ` Ching Bon Lam
2003-10-09 12:11                                 ` Marin David Condic
2003-10-09 17:16                                   ` Warren W. Gay VE3WWG
2003-10-09 18:30                                     ` tmoran
2003-10-10  1:29                                   ` Frank
2003-10-10  8:19                                     ` chris
2003-10-10  2:53                                   ` Robert I. Eachus
2003-10-08 15:55                             ` Stephen Leake
2003-10-08 16:49                               ` Stephane Richard
2003-10-08 17:18                               ` Marin David Condic
2003-10-10  2:59                                 ` Hyman Rosen
2003-10-08 19:54                             ` Robert I. Eachus
2003-10-08 21:40                               ` Stephen Leake
2003-10-09 12:28                               ` Marin David Condic
2003-10-09 15:18                                 ` Stefan Lucks
2003-10-09 16:10                                   ` Stephen Leake
2003-10-09 16:57                                     ` Stephane Richard
2003-10-10  4:58                                     ` Marin David Condic
2003-10-10  9:28                                     ` Stefan Lucks [this message]
2003-10-10 14:59                                       ` Stephen Leake
2003-10-10 16:48                                         ` Ed Falis
2003-10-10 16:29                                       ` Warren W. Gay VE3WWG
2003-10-11  7:01                                         ` Simon Wright
2003-10-10 15:51                                     ` Robert I. Eachus
2003-10-10 17:04                                       ` Stephen Leake
2003-10-10  3:02                                 ` Robert I. Eachus
2003-10-10  5:17                                   ` Marin David Condic
2003-10-10 16:38                                     ` Warren W. Gay VE3WWG
2003-10-11 14:35                                       ` Marin David Condic
2003-10-15 16:24                                         ` Warren W. Gay VE3WWG
2003-10-15 17:57                                           ` Ed Falis
2003-10-15 20:45                                             ` Warren W. Gay VE3WWG
2003-10-15 20:44                                           ` Mark A. Biggar
2003-10-16 12:55                                             ` Marin David Condic
2003-10-16 16:52                                               ` Warren W. Gay VE3WWG
2003-10-16 17:53                                                 ` Marin David Condic
2003-10-17 13:25                                                   ` Warren W. Gay VE3WWG
2003-10-18 13:50                                                     ` Marin David Condic
2003-10-21 17:14                                                       ` Warren W. Gay VE3WWG
2003-10-22 13:04                                                         ` Marin David Condic
2003-10-22 16:46                                                           ` Warren W. Gay VE3WWG
2003-10-22 17:13                                                             ` Ed Falis
2003-10-23  5:23                                                               ` Marin David Condic
2003-10-23 13:55                                                                 ` Ed Falis
2003-10-23  5:21                                                             ` Marin David Condic
2003-10-27 17:37                                                               ` Warren W. Gay VE3WWG
2003-10-28  1:53                                                                 ` Marin David Condic
2003-10-16 12:38                                           ` Marin David Condic
2003-10-16 17:16                                             ` Warren W. Gay VE3WWG
2003-10-16 18:02                                               ` Stephane Richard
2003-10-16 18:23                                                 ` Stephane Richard
2003-10-17  0:36                                                 ` Robert I. Eachus
2003-10-17  1:24                                                   ` Stephane Richard
2003-10-17  1:40                                                   ` Marin David Condic
2003-10-17  2:34                                                     ` Stephane Richard
2003-10-17 12:45                                                       ` Marin David Condic
2003-10-16 18:04                                               ` Marin David Condic
2003-10-17 20:09                                                 ` Jacob Sparre Andersen
2003-10-20 17:40                                                   ` Robert I. Eachus
2003-10-21 20:55                                                     ` Warren W. Gay VE3WWG
2003-10-21 22:46                                                     ` Stephane Richard
2003-10-21 21:02                                                 ` Warren W. Gay VE3WWG
2003-10-10 18:44                                     ` Robert I. Eachus
2003-10-11 14:42                                       ` Marin David Condic
2003-10-11 15:10                                         ` Stephane Richard
2003-10-11 17:58                                           ` Robert I. Eachus
2003-10-12  1:01                                             ` Marin David Condic
2003-10-12  0:51                                           ` Marin David Condic
2003-10-12  1:17                                             ` Stephane Richard
2003-10-12  2:10                                               ` Marin David Condic
2003-10-12  5:14                                                 ` Robert I. Eachus
2003-10-12 13:39                                                   ` Marin David Condic
2003-10-12  1:20                                             ` Stephane Richard
2003-10-12  2:32                                               ` Marin David Condic
2003-10-12 11:14                                                 ` Stephane Richard
2003-10-16 13:18                                                   ` aleistad
2003-10-07 22:12                           ` tmoran
2003-10-07 22:37                           ` Alexandre E. Kopilovitch
2003-10-08 16:03                           ` Martin Krischik
2003-10-09 13:28                           ` Jacob Sparre Andersen
2003-10-28 11:25                         ` Marius Amado Alves
2003-10-28 12:52                           ` Marin David Condic
2003-10-28 13:28                             ` Marius Amado Alves
2003-10-28 23:20                               ` Marin David Condic
2003-10-28 13:21                           ` Stephane Richard
2003-10-28 16:21                           ` Standard Library Interest? (The Big Player ACT) Stephane Richard
2003-10-28 23:37                             ` Marin David Condic
2003-10-29  1:12                               ` Stephane Richard
2003-10-29 14:35                               ` Marc A. Criley
2003-10-29 23:10                                 ` tmoran
2003-10-29 23:34                                 ` Marin David Condic
2003-10-31 14:42                                   ` Georg Bauhaus
2003-11-01  3:05                                     ` Marin David Condic
2003-11-01  3:50                                       ` Stephane Richard
2003-11-01 13:20                                         ` Marin David Condic
2003-11-02 16:41                                       ` Georg Bauhaus
2003-11-02 19:25                                         ` Marin David Condic
2003-11-01  7:20                                     ` Simon Wright
2003-11-02 17:04                                       ` Georg Bauhaus
2003-11-02 15:09                             ` Standard Library Interest? (The Big Player IRVINE) Stephane Richard
2003-11-02 16:18                               ` Marius Amado Alves
2003-11-02 16:35                                 ` Stephane Richard
2003-11-02 22:41                               ` Marin David Condic
2003-11-03  1:07                                 ` Standard Library Interest? Robert I. Eachus
2003-11-03  1:27                                   ` Stephane Richard
2003-11-03 12:52                                     ` Marin David Condic
2003-11-03  3:58                                   ` Alexandre E. Kopilovitch
2003-11-03  6:28                                     ` Robert I. Eachus
2003-11-03 12:11                                       ` Jeff C,
2003-11-03 17:07                                         ` Robert I. Eachus
2003-11-04 18:07                                       ` Alexandre E. Kopilovitch
2003-11-03  7:54                                     ` Mark A. Biggar
2003-11-03 21:02                                       ` Alexandre E. Kopilovitch
2003-11-04  1:50                                         ` Robert I. Eachus
2003-11-04 18:16                                           ` Jeffrey Carter
2003-11-06  2:07                                           ` Alexandre E. Kopilovitch
2003-11-03 15:14                                     ` Robert Spooner
2003-11-03 15:38                                       ` Dmitry A. Kazakov
2003-11-03 16:52                                       ` Alexandre E. Kopilovitch
2003-11-03 12:36                                   ` Marin David Condic
     [not found]                         ` <1067340353.3441.18.camel@localhost.localdomain>
2003-10-28 11:30                           ` Marius Amado Alves
2003-10-08  1:07                       ` Marin David Condic
2003-10-08  1:15                         ` Stephane Richard
2003-10-08  1:32                           ` Marin David Condic
2003-10-08 15:58                           ` Stephen Leake
2003-10-08 17:24                             ` Marin David Condic
2003-10-07 18:19                     ` Martin Dowie
2003-10-07 19:29                       ` Stephane Richard
2003-10-07 20:30                         ` Martin Dowie
2003-10-08  1:15                       ` Marin David Condic
2003-10-08 21:56                         ` Stephane Richard
2003-10-08 23:56                           ` Robert I. Eachus
2003-10-09  0:29                             ` Stephane Richard
2003-10-10 16:47                             ` POSIX File Structure Conventions for Ada (Was: Standard Library Interest?) Warren W. Gay VE3WWG
2003-10-10 17:17                               ` Ludovic Brenta
2003-10-11 16:25                                 ` Warren W. Gay VE3WWG
2003-10-09 12:42                           ` Standard Library Interest? Marin David Condic
2003-10-09 13:07                             ` Stephane Richard
2003-10-10  3:15                               ` Robert I. Eachus
2003-10-10  8:10                                 ` Stephane Richard
2003-10-10 12:49                                   ` Marin David Condic
2003-10-10 13:20                                     ` Jeff C,
2003-10-11 14:48                                       ` Marin David Condic
2003-10-11 15:09                                         ` Stephane Richard
2003-10-10 19:22                                   ` Robert I. Eachus
2003-10-11 11:30                                     ` Stephane Richard
2003-10-11 12:36                                     ` Stephane Richard
2003-10-11 17:41                                       ` sk
2003-10-11 17:43                                         ` Stephane Richard
2003-10-11 18:08                                       ` Robert I. Eachus
2003-10-11 18:11                                         ` Stephane Richard
2003-10-12  1:33                                         ` Marin David Condic
2003-10-12  5:16                                           ` Robert I. Eachus
2003-10-15 16:42                                         ` Warren W. Gay VE3WWG
2003-10-15 16:35                                     ` Warren W. Gay VE3WWG
2003-10-16 12:59                                       ` Marin David Condic
2003-10-17 19:54                                         ` Warren W. Gay VE3WWG
     [not found]                   ` <8d6b51-0u3.ln1@beastie.ix.netcom.com>
2003-10-07 23:58                     ` Stephane Richard
     [not found]                       ` <f8nc51-gv2.ln1@beastie.ix.netcom.com>
2003-10-08 12:45                         ` Marin David Condic
2003-10-08 16:00                         ` Stephen Leake
2003-10-08 17:37                           ` Stephane Richard
     [not found]                           ` <hdbf51-523.ln1@beastie.ix.netcom.com>
2003-10-09 14:24                             ` Hyman Rosen
2003-10-10 12:06                               ` Stephane Richard
2003-10-10 15:03                                 ` Stephen Leake
2003-10-05 17:41   ` Georg Bauhaus
2003-10-05 17:48     ` chris
2003-10-05 23:57     ` Robert I. Eachus
2003-10-07  1:44       ` Georg Bauhaus
2003-10-08 20:44         ` Robert I. Eachus
2003-10-09  2:05           ` Alexandre E. Kopilovitch
2003-10-09  5:39             ` Robert I. Eachus
2003-10-09  9:06               ` Dmitry A. Kazakov
2003-10-05 14:49 ` Martin Krischik
2003-10-05 15:25   ` Marin David Condic
2003-10-05 15:51     ` sk
2003-10-05 18:23       ` Marin David Condic
2003-10-05 19:14         ` Stephane Richard
2003-10-06 13:15           ` Marin David Condic
2003-10-05 19:35         ` Jeffrey Carter
2003-10-06  9:46           ` Stephane Richard
2003-10-06 13:16             ` Marin David Condic
2003-10-06 14:44               ` Stephane Richard
2003-10-06 16:51               ` Martin Krischik
2003-10-06 16:48         ` Martin Krischik
2003-10-06 23:38           ` Marin David Condic
2003-10-06 16:42     ` Martin Krischik
2003-10-06 23:39       ` Marin David Condic
2003-10-05 15:02 ` Marin David Condic
2003-10-05 16:43   ` Robert I. Eachus
2003-10-05 18:31     ` Marin David Condic
2003-10-07  1:58       ` Robert I. Eachus
2003-10-07 12:48         ` Marin David Condic
2003-10-08 20:49           ` Robert I. Eachus
2003-10-05 17:49   ` Georg Bauhaus
2003-10-05 18:43     ` Marin David Condic
2003-10-05 23:26       ` Georg Bauhaus
2003-10-06 13:27         ` Marin David Condic
2003-10-10 16:58           ` Warren W. Gay VE3WWG
2003-10-11  9:55             ` Martin Dowie
2003-10-15 16:51               ` Warren W. Gay VE3WWG
2003-10-16 12:14                 ` Martin Dowie
2003-10-22 16:48                   ` Warren W. Gay VE3WWG
2003-10-05 19:27   ` Martin Dowie
2003-10-06 13:33     ` Marin David Condic
2003-10-06 17:16       ` Martin Dowie
2003-10-06 23:45         ` Marin David Condic
2003-10-06 16:47     ` chris
2003-10-06 19:03       ` sk
2003-10-06 20:18         ` chris
2003-10-06 21:13           ` sk
2003-10-20  3:22             ` Dave Thompson
2003-10-20 10:29               ` sk
2003-10-07  0:30           ` Mark Lorenzen
2003-10-07  2:13     ` Robert I. Eachus
2003-10-07 22:49       ` Georg Bauhaus
2003-10-08 20:58         ` Robert I. Eachus
2003-10-09 12:57           ` Marin David Condic
2003-10-10  3:09             ` Robert I. Eachus
2003-10-06  7:02   ` Preben Randhol
2003-10-06 13:37     ` Marin David Condic
2003-10-06 14:34       ` Preben Randhol
2003-10-06 23:50         ` Marin David Condic
2003-10-07  8:55           ` Preben Randhol
2003-10-07 13:05             ` Marin David Condic
2003-10-06 19:37       ` tmoran
2003-10-06 23:57         ` Marin David Condic
2003-10-08 21:46           ` Robert I. Eachus
2003-10-09  8:10             ` Ole-Hjalmar Kristensen
2003-10-10  2:29               ` Robert I. Eachus
2003-10-09  9:20             ` Dmitry A. Kazakov
2003-10-09 13:09             ` Marin David Condic
2003-10-10 14:44               ` Robert I. Eachus
2003-10-11 14:57                 ` Marin David Condic
2003-10-11 18:25                   ` Robert I. Eachus
2003-10-12  1:49                     ` Marin David Condic
2003-10-12  3:52                       ` Robert I. Eachus
2003-10-06 13:50     ` (see below)
2003-10-06 15:28       ` Preben Randhol
2003-10-06 19:37         ` tmoran
2003-10-07  8:59           ` Preben Randhol
2003-10-05 23:33 ` Robert C. Leif
2003-10-06  9:02 ` Vadim Godunko
2003-10-07  0:48 ` Matthew Heaney
2003-10-07  8:56   ` Preben Randhol
2003-10-07 13:08     ` Marin David Condic
  -- strict thread matches above, loose matches on Subject: below --
2003-10-10 13:46 Beard, Frank Randolph CIV
2003-10-11  7:33 ` Martin Krischik
2003-10-11 15:04 ` Marin David Condic
     [not found] <mailman.191.1066918723.25614.comp.lang.ada@ada-france.org>
2003-10-23 14:26 ` Ed Falis
replies disabled

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