comp.lang.ada
 help / color / mirror / Atom feed
From: Arthur Schwarz <schwarza@gdls.com>
To: Robert Dewar <dewar@merv.cs.nyu.edu>
Subject: Re: Ada95 to ANSI_C converter
Date: 1997/04/07
Date: 1997-04-07T00:00:00+00:00	[thread overview]
Message-ID: <334929E8.4E68@gdls.com> (raw)
In-Reply-To: dewar.860184524@merv


Robert Dewar wrote:
> 
> Keith says
> 
> <<(I *like* nasty test cases)>>
> 
> The trouble with nasty test cases is that they can sometimes result in
> implementors wasting huge amounts of time getting things right that are
> of no possible concern to users. The old ACVC suite was full of such
> things, and it is still quite often the case that we make a change
> and it affects none of our user programs in our regression suite, but
> it causes an obscure bug in some ACVC test. Equally, it is often the
> case that a change blows away huge numbers of user tests, but the
> ACVC hums merrily on with no errors.
> 
> Anecdotally (we really should collect data on this, we have the raw data),
> we have the impression that the Ada 95 tests tend to track user programs
> more closely. They are certainly much less full of "nasty test cases".


(Anecdotally): One program that I wrote (Fortran IV/66) broke the
compiler.
I was told by my manager that my program 'stressed' it (the compiler).
And
at that time and since I have wondered why! If the language permits a
construct
and the compiler doesn't accept it, or what's worse, the generated code
doesn't
perform the operation correctly, then the compiler is "broke", not the
construct
and not the language. I would then say that a "nasty test case" is just
another
language construct which must be accepted by the compiler. It's only
nasty when
the compiler can not process it correctly. The same goes for 'obscure',
'seldom
used', and of course, 'of no possible use to users'. To my jaundiced eye
this all
seems to be an excuse to direct effort at 'big payoff' items, the ones
that seem
to be most likely of use. The problem is that the devil is in the
details, and it
is just those other, legal, small payoff items which cause great labor
for the 
implementor to debug; transfering the cost of the compiler from
developer to user.

Your other comment that the ACVC test does not catch all errors is valid
but I think
not very meaningful. The complexity of language and compiler and
computer and
operating system and ... conspire to make exhaustive testing too
exhaustive. If
this is accepted as an accurate statement, it would seem unlikely that
any test
suite, except for very small 'languages', could ever be exhaustive
enough to catch
all possible compiler errors.

And this is not to attempt to derate ACT or your own efforts. Only to
say that
IMO the issue is not meaningful in that failing to pass a "nasty test
case" means
that the language feature tested is not useable and the compiler
erroneous.

art

My own opinions are often my own, seldom my companies.




  reply	other threads:[~1997-04-07  0:00 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <5hbrah$ctt$1@gail.ripco.com>
1997-03-26  0:00 ` Ada95 to ANSI_C converter Nick Roberts
1997-03-26  0:00   ` Robert Dewar
1997-03-27  0:00     ` Jennifer E. Lee
1997-03-28  0:00       ` Craig Franck
1997-03-28  0:00         ` Robert Dewar
1997-03-28  0:00     ` Steve Doiel
1997-03-28  0:00       ` Robert Dewar
1997-04-02  0:00         ` Richard Kenner
1997-04-02  0:00           ` Robert Dewar
1997-04-02  0:00             ` Richard Kenner
1997-04-02  0:00               ` Robert Dewar
1997-04-02  0:00             ` Robert A Duff
1997-04-04  0:00               ` Keith Thompson
1997-04-04  0:00                 ` Robert Dewar
1997-04-07  0:00                   ` Arthur Schwarz [this message]
1997-04-07  0:00                     ` Robert Dewar
1997-04-08  0:00                       ` Robert A Duff
1997-04-07  0:00                     ` Peter Seebach
1997-04-07  0:00                       ` Kaz Kylheku
1997-04-08  0:00                   ` Keith Thompson
1997-04-02  0:00       ` Richard Kenner
1997-04-03  0:00         ` Fergus Henderson
1997-03-27  0:00   ` Craig Franck
1997-03-27  0:00     ` Jennifer E. Lee
1997-03-27  0:00   ` Jennifer E. Lee
1997-03-27  0:00     ` Philip Johnson
1997-04-01  0:00       ` Jennifer E. Lee
1997-04-02  0:00         ` Philip E. Johnson
1997-04-03  0:00       ` Jon S Anthony
1997-03-28  0:00     ` Robert Dewar
1997-03-28  0:00       ` Craig Franck
1997-03-28  0:00         ` Robert Dewar
1997-04-01  0:00     ` Tom Wheeley
1997-04-01  0:00     ` David Kristola
1997-04-01  0:00       ` Jennifer E. Lee
1997-04-01  0:00   ` Robert I. Eachus
1997-03-27  0:00 ` Jeff Carter
1997-03-28  0:00 ` Jon S Anthony
1997-03-28  0:00   ` Robert Dewar
1997-04-02  0:00   ` Jon S Anthony
1997-04-03  0:00     ` Robert Dewar
1997-04-04  0:00     ` Jon S Anthony
1997-04-03  0:00   ` Jon S Anthony
1997-04-03  0:00     ` Robert Dewar
1997-04-03  0:00     ` Robert A Duff
1997-04-03  0:00       ` Robert Dewar
1997-04-04  0:00   ` Jon S Anthony
1997-04-04  0:00     ` Robert Dewar
1997-04-04  0:00     ` Robert Dewar
1997-04-07  0:00   ` Jon S Anthony
1997-04-07  0:00   ` Jon S Anthony
1997-03-28  0:00 ` Jon S Anthony
1997-03-31  0:00 ` David Emery
1997-03-31  0:00 ` Jon S Anthony
1997-03-31  0:00   ` Robert Dewar
1997-04-01  0:00   ` Robert A Duff
1997-04-03  0:00 ` Jon S Anthony
1997-04-03  0:00   ` Jennifer E. Lee
1997-04-04  0:00 ` Howard W. LUDWIG
1997-04-16  0:00 Dan Lehman
1997-04-17  0:00 ` Robert Dewar
1997-04-20  0:00   ` Nick Roberts
1997-04-20  0:00     ` Robert Dewar
replies disabled

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