comp.lang.ada
 help / color / mirror / Atom feed
From: rsd@sei.cmu.edu (Richard S D'Ippolito)
Subject: Re: Reasons for dropping Ada
Date: 20 Feb 90 21:04:02 GMT	[thread overview]
Message-ID: <6175@ae.sei.cmu.edu> (raw)
In-Reply-To: 19409@grebyn.com

In article <19409@grebyn.com> ted@grebyn.com (Ted Holden) writes:

>And then, there's the Ada/Software-Engineering problem;  if it isn't
>grandiose, it's not worth thinking about, much less doing.  Not that
>there aren't grandiose success stories, such as UNIX or WordPerfect,
>around in the world.  But wordPerfect started out as a simple little
>editor program written in PC assembler and added features every six
>months or so until it finally EVOLVED into something grandiose.  If the
>same program were to be "designed" and written under DOD specs, then
>they would just be getting version 1.0 out the door now, after seven
>years of design, followed by two years of coding, at the end of which
>the entire package would be magically required to function properly,
>just like the Airbus control system, the Space Telescope, Stanfins, WIS,
>and all of your other great successes do.

You have cited UNIX and WordPerfect before as "success" stories, and had
been asked several months ago by another reader to provide supporting data.
I have not seen your reply.  Have you made it?  I would suggest that the
number of users of a product is not a direct measure of quality or of
engineering prowess.  (Horses were widespread until displaced by autos.)

If you haven't cited numbers to demonstrate productivity and quality of
those products, will you please do so now?  I will accept either number of
source lines of code per person-month and number of errors per KLOC, or
other results based on your own definitions.

I understand that a version of WordPerfect was rewritten from scratch in C.
This might be a good one for you to comment on as to the amount of design,
implementation, and integration times spent and how close the company came
to meeting the targeted release date.

I have a UNIX system here that still has numerous errors, some of which are
listed rather triumphantly, if not belligerently in the manuals.  Let me
quote a sample of them:

	
	BBEMACS(1)  I tinker too much, so occasionally I mess up and it
	         don't work no good.  But then I fix it, hooray.
	DAB(!1)  There is a mysterious bug causing occasional core dumps...
	         ...just send mail to the author.
	FILE(1)  It often makes mistakes.
	JOBS(3J)  There is no excuse for the "getwd" routine to be in the
	         jobs library.  There is even less reason for this routine
	         not to have been documented by the author(s) at Berkeley.
	PARSEDATE(3)  The grammar is incomplete and always will be.
	PUTC(3)  Errors can occur long after the call to 'putc'.
	SCANF(3S)  The success of literal matches and suppressed
	         assignments is not directly determinable.
	SIN(3M)  The value of 'tan' for arguments greater than about 2**31
	         is garbage.
	CTAGS(1)  ...if you have two Pascal procedures in different blocks
	         with the same name, you lose.
	EMACS(1)  Not bloody likely.
	TC(1)    The aspect ratio option is unbelievable.
	UNITS(1)  Don't base your financial plans on the currency
	         conversions.

Now, your system may have different texts for some of these, but I have
several sets of manuals spanning years which contain some of the same texts
(DEC substitutes the word 'unreliable' for the original 'garbage').  As I
said, these kinds of messages aren't universal, but there enough of them
spanning a large enough sample of years and programmers to cause me to
question the kind of attitude of the folks you continually hold up as model
programmers.

There is a more fundamental question, however, that we can save for another
time, having to do with the suitability of the current software models
implied by the systems and languages you support for large-scale projects.
It makes no sense to touch it when there is such an obvious disconnect.


Rich
-- 
Hitting baseballs and writing software are two professions where you can
become a millionare with a 75% performance failure rate.
							 rsd@sei.cmu.edu
------------------------------------------------------------------------

  reply	other threads:[~1990-02-20 21:04 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1990-02-20 16:13 Reasons for dropping Ada Ted Holden
1990-02-20 21:04 ` Richard S D'Ippolito [this message]
1990-02-20 23:03   ` Reasons for keeping Ada David Kassover
1990-02-21  0:40     ` Clement Pellerin
1990-02-21 19:02   ` Reasons for dropping Ada Loren Louis Hart
1990-02-22 16:07     ` Mike Coffin
1990-02-22 17:01       ` if UNIX then USE_C ?? (was: Reasons for drop) Dennis M. O'Connor
1990-02-22 21:51         ` Barry Margolin
1990-02-23 19:34           ` Loren Louis Hart
1990-02-25 19:58           ` David Kassover
1990-02-26 12:45             ` John F Nixon
1990-02-26 18:28               ` David Kassover
1990-02-26 20:55                 ` John F Nixon
1990-02-26 22:00                   ` David Kassover
1990-02-27 18:55                 ` Jeremy Epstein
1990-02-28  1:19                   ` Alex Blakemore
1990-02-28 18:56                     ` Ada functions versus arrays (i.e. () vs [] ) Richard A Hammond
1990-03-01  3:25                       ` Alex Blakemore
1990-03-01 13:11                         ` Robert Firth
1990-03-02 10:56                           ` Mike Harrison
1990-03-02 23:46                           ` Scott Simpson
1990-03-02 10:42                         ` Mike Harrison
1990-03-06 19:13                       ` Erland Sommarskog
1990-03-08 14:21                         ` John Goodenough
1990-03-14 18:19                     ` if UNIX then USE_C ?? (was: Reasons for drop) RCAPENER
1990-03-01  0:29                   ` David Kassover
1990-03-01 15:11                     ` Steve Tynor
1990-03-01 18:29                       ` David Kassover
1990-03-02  0:19                 ` Robert D. Houk
1990-02-28 19:51         ` Andy DeFaria
1990-02-20 22:21 ` Reasons for dropping Ada Jeffrey M. Schweiger
replies disabled

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