comp.lang.ada
 help / color / mirror / Atom feed
From: billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 )
Subject: Re: Ada
Date: 15 Nov 89 16:06:41 GMT	[thread overview]
Message-ID: <7053@hubcap.clemson.edu> (raw)
In-Reply-To: 14033@grebyn.com

From article <14033@grebyn.com>, by ted@grebyn.com (Ted Holden):
> Journal articles indicate a continuing failure of Ada to work for embedded
> systems as well as for large scale projects, a continuing failure to run
> with acceptable performance on anything other than parallel or special-
> purpose, expensive systems, and an actual gain in cross-system complexity
> and decrease in the stated goal of reuseability.  

   This is blatantly false; consider the November 1988 article
   in IEEE Software ("Large Ada projects show productivity gains"):

      After years of development and an initial skeptical reception,
      many people are now using Ada and saying that they like it...
      The growth in Ada's use has been helped by favorable reports
      from early adopters ("Ada Catches on in the Commercial Market,
      Soft News, IEEE Software, November 1986, p. 81) and by the
      growing number of validated compilers... project results show
      that Ada can greatly increase productivity for large systems...
      [in a 1.2-million-line Ada project] reuseable software developed 
      on the project was counted only once.  Roughly 13 percent of the
      delivered software was reuseable.  This reuse saved 190 man-months
      of effort (a 9-percent savings) and reduced the schedule by two
      calender months (a 4-percent savings)... Productivity for the
      execution environment -- including the operating system, data
      management, information management, communications support, and
      communications interface -- was 550 lines per man-month... 
      Productivity for the applications software... was 704 lines per
      man-month... the average productivity of the 1,500 systems in
      productivity consultant Lawrence Putnam's database: 77 lines
      per man-month (at the 1.2-million-line level)... 

   Sounds like a continuing *success* to me... 
   
> In particular, the
> ordinary systems which most people will be seeing in front of them for the
> next 5 - 15 years, UNIX systems and PCs, will not run Ada accepteably.

   Precisely the point of Dr. Charles McKay, head of the Software
   Engineering Research Consortium, in his Tri-Ada '88 presentation,
   "Standards for the Sake of Standards -- A Recipe for Failure".

   A prime example is Unix; the current POSIX effort aims to 
   standardize 1960's technology, thus resulting in a "lowest
   common denominator" which locks users into obsolescence.

   Ada's problem with Unix is that Unix, being 1960's technology,
   does not properly support lightweight processes.  Modernized 
   versions of Unix (e.g., MACH) which are designed to provide
   such support remove the difficulty.  Note that C or C++ programs
   making use of the same "heavyweight" tasking facility will be
   equally slow, since they rely on precisely the same system. 

   If one does not have to struggle with the limitations of *Unix*,
   then there is a wide selection of Ada compilers which run Ada 
   within that environment quite nicely.  Some, like the Telesoft
   TeleGen2 compiler, have global optimization facilities which
   result in better code than that which can be produced by current
   C compilers (as of Tri-Ada '88). 
   
> C began with real machines, real programmers.  The idea seems to have
> been:  [...] end up with a kind of high-structured, low-level language; 
> a thinking-man's assembler.  

   Yes, as one Usenetter's .signature states, "C combines the power
   of assembly language with the flexibility of assembly language".

   Fortunately, the economics of software development are in favor
   of using considerably higher-level languages.

> C++ appears to BE the very language which Ada was supposed to be
> (the spirit of the law) but never can and never will be.  

   Total rubbish; C++ retains all the low-level and dangerous
   facilities of C, which is obsolescent by modern software
   engineering standards.  As stated by Fairley (Software
   Engineering Concepts, page 228),  

      Modern programming languages provide a variety of
      features to support development and maintenance of
      software products.  These features include strong
      type checking, separate compilation, user-defined
      data types, data encapsulation, data abstraction,
      generics, flexible scope rules, user-defined exception
      handling, and concurrency mechanisms.  This chapter
      discusses these concepts...

   Now C++ has one useful feature which Ada does not: inheritance.
   But it is also (as its designer freely admits) lacking in
   generics and exception handling, and also does not provide
   a means of expressing concurrency in a standardized, portable way. 
   Since tools such as Classic Ada permit the use of inheritance with
   Ada (generating *standardized*, compile-it-anywhere code), this is
   something which can be worked around until Ada 9X brings it in directly. 

> Ada is what you might expect from a programming language designed by
> committee;  it is unbelievably slow, an unbelievable resource hog,

   This has been a property of some early Ada *compilers*, but is
   not a property of the Ada *language*.  Fortunately, compiler
   technology is now capable of delivering tight, efficient Ada
   object code, better than that being produced by C compilers.

   Compilation is slower because the Ada compiler is doing much
   more work for you; this reflects again the economics of software
   development in that machine time is cheaper than programmer time.

> [...] There is the August 21 89 issue of Government Computer News
> describing the problems which the huge FAA Advanced Automation System is
> having due to IBM Ada implementations and tools (or lack thereof).  

   Are you saying that this is the fault of the *language*, or of IBM?

> There is no real way to call [Ada] from a Cobol program.

   Ada users can call COBOL or any other language using pragma
   INTERFACE; COBOL needs to have a similar standardized means
   of calling other languages.  Given that it does not, ad hoc
   means of calling other languages have been devised; there is
   no reason why such techniques cannot be used to call Ada just
   as well as C or any other language.  But this is COBOL's problem,
   not Ada's.  
    
> the programming style being promulgated by DOD for Ada [descriptive
> variable names] is anti-conducive to the stated goal of readability;  

   To C hackers, who are accustomed to single-letter variables, yes.

   Software engineering specialists tend to have the opposite perspective.

> Second, DOD is often insisting on portability via Ada rather than
> portability via UNIX, POSIX calls etc.  This amounts to such things as
> insisting, for instance, that vendors provide direct Ada hooks to a
> database rather than simply writing an Ada -> C -> database hook.  Typical
> vendor response is either "F... You" or "Manana".

   And the response of the Ada community is to turn to companies
   such as The Ada Ace Group, Inc., a technical consulting company
   specializing in the development of Ada interface to software
   products and applications.  They provide customized pure Ada
   interfaces to existing commercial software products, such as
   databases, operating systems, and specific applications such 
   as X-Windows.  (Contact information: 4254 Indigo Drive, 
   San Jose, CA  95136; (408) 267-8296)  Do you really think the
   Ada community, with its emphasis on standardization and vendor  
   independence, is going to be stopped by an intransigent vendor?

> A military project involving Sun machines and Ada was abandoned after
> something like 4 years and $30 million effort because of unacceptable
> performance;  database screens were taking over a minute to come up.  The
> design work had all been done according to your formula, the individual
> modules had been designed, written, and tested, all according to the
> standard military schedules and formulas (2167 etc.).  Everything seemed
> hunky dory, only when they put the fricking thing together, it was too
> damned slow to use.  And, the remarkable thing is, the very system the
> military insists upon for management of software contracts prevented
> anybody from knowing they were in trouble until four years and millions
> had been blown.  The government people involved were essentially reduced
> to the role of actors in a Greek tragedy.
>  
> Asked for a solution, my firm weighed the choice between offering an Ada-
> to-C converter and silence, and opted for silence.

   How about applying a profiler and recoding the "hot spots"?
   If the slowness of Unix process handling is a problem, then
   a more modern version of Unix should be used.  Your company
   should have considered more than two options.

   There are problems in the government management process, but
   this pertains to the government and not to Ada.


   Bill Wolfe, wtwolfe@hubcap.clemson.edu

  parent reply	other threads:[~1989-11-15 16:06 UTC|newest]

Thread overview: 121+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1989-11-14 21:24 A farewell to Ada Ted Holden
1989-11-14 22:54 ` schmidt
1989-11-15 16:06 ` William Thomas Wolfe, 2847  [this message]
1989-11-15 16:29   ` Ada & IBM William Thomas Wolfe, 2847 
1989-11-17 15:16     ` ryer
1989-11-18 18:47       ` William Thomas Wolfe, 2847 
1989-11-20  4:53       ` Jerry Callen
1989-11-19  6:05     ` Dick Dunn
1989-11-22 19:20       ` William Thomas Wolfe, 2847 
1989-11-19 20:19     ` Liam R. E. Quin
1989-11-20 12:55       ` William Thomas Wolfe, 2847 
1989-11-25 23:35         ` Liam R. E. Quin
1989-11-26  9:03           ` Ken Ritchie
1989-11-15 23:18   ` Ada Promises Doug Schmidt
1989-11-16 22:45     ` Ada compilers William Thomas Wolfe, 2847 
1989-11-19  6:30       ` This has gotten stupid! Dick Dunn
1989-11-16 19:08   ` Ada Walter Rowe
1989-11-16 21:33     ` Ada William Thomas Wolfe, 2847 
1989-11-17 18:53       ` Ada Pablo Fernicola
1989-11-18 18:55         ` Ada William Thomas Wolfe, 2847 
1989-11-21  5:24           ` Ada Andrew Koenig
1989-11-22  9:54             ` Ada Mats Luthman
1989-11-22 18:44             ` Ada William Thomas Wolfe, 2847 
1989-11-23  9:44               ` Ada Mats Luthman
1989-11-23  7:12             ` Ada Markku Sakkinen
1989-11-21 14:35           ` Ada [and the object oriented metaphor] mjl
1989-11-22 20:54             ` Hoare, Ada, and safety/complexity John Goodenough
1989-11-24  0:38               ` Richard Pattis
1989-11-26  6:09           ` Ada vs. C++ Paul S. R. Chisholm
1989-11-18  6:38       ` Ada Marco S Hyman
1989-11-19  7:25       ` interesting statistic Dick Dunn
1989-11-22 18:54         ` William Thomas Wolfe, 2847 
1989-11-24 17:44           ` Cay Horstmann
1989-11-25 19:59             ` William Thomas Wolfe, 2847 
1989-11-17 15:59     ` Ada allows one-char names (was Re: Ada) Steve Frysinger of Blue Feather Farm
1989-11-19  5:52   ` Forward into the past Dick Dunn
1989-11-20 16:47   ` Ada vs. Posix -- the battle continues mjl
1989-11-20 21:51     ` Ada & Posix William Thomas Wolfe, 2847 
1989-11-21  1:06       ` William Thomas Wolfe, 2847 
1989-11-15 18:55 ` A farewell to Ada Richard S D'Ippolito
1989-11-17 17:19 ` Michael Schwartz
  -- strict thread matches above, loose matches on Subject: below --
1989-11-19  3:33 Ted Holden
1989-11-19 17:59 ` Ada William Thomas Wolfe, 2847 
1990-03-08 18:46 ADA jj
1990-03-12  2:14 A Poor Man's Ada Library Ted Holden
1990-03-12  5:08 ` Ada William Thomas Wolfe, 2847 
1990-03-15 20:32   ` Ada William B. Tyler
1990-03-16 14:08     ` Ada Dennis M. O'Connor
1996-06-14  0:00 ADA Robert Adams
1996-08-05  0:00 ada BCummi6553
1997-08-23  0:00 Ada Jeffrey D. Iverson
1997-10-28  0:00 Ada N6101233
1999-12-23  0:00 Ada Brijesh
1999-12-23  0:00 ` Ada reason67
1999-12-23  0:00   ` Ada Robert Dewar
2000-01-03  0:00     ` Ada Terry Sikes
2000-01-03  0:00       ` Ada Hyman Rosen
2000-01-04  0:00         ` Ada Terry Sikes
2000-01-04  0:00         ` Ada Richard D Riehle
2000-01-04  0:00           ` Ada Hyman Rosen
2000-01-04  0:00             ` Ada Richard D Riehle
2000-01-04  0:00             ` Ada Robert A Duff
2000-01-04  0:00         ` Ada Robert Dewar
2000-01-04  0:00           ` Ada Hyman Rosen
2000-01-04  0:00           ` Ada Robert A Duff
2000-01-04  0:00             ` Ada Hyman Rosen
2000-01-04  0:00         ` Ada Florian Weimer
2000-01-04  0:00           ` Ada Brian Rogoff
2000-01-04  0:00           ` Ada Hyman Rosen
2000-01-04  0:00       ` Ada Robert Dewar
2000-01-04  0:00         ` Ada Terry Sikes
2000-01-05  0:00           ` Ada Robert Dewar
2000-01-05  0:00             ` Ada Terry Sikes
2000-01-06  0:00           ` Ada Al Christians
2000-01-06  0:00             ` Ada Terry Sikes
2000-01-07  0:00             ` Ada Robert Dewar
1999-12-23  0:00 ` Ada Robert Dewar
1999-12-23  0:00   ` Ada tmoran
1999-12-23  0:00 ` Ada Roger Racine
1999-12-28  0:00   ` Ada Marin D. Condic
1999-12-31  0:00     ` Ada Richard D Riehle
2000-01-02  0:00       ` Ada Marin D. Condic
2000-01-02  0:00         ` Ada Robert Dewar
2000-01-02  0:00           ` Ada Marin D. Condic
2000-01-03  0:00             ` Ada Ted Dennison
2000-01-03  0:00             ` Ada Robert Dewar
2000-01-03  0:00               ` Ada Marin D. Condic
2000-01-03  0:00                 ` Ada Larry Kilgallen
2000-01-04  0:00                   ` Ada Charles Hixson
2000-01-03  0:00                 ` Ada Roger Racine
2000-01-13  0:00     ` Ada Magnus Alexandersson
2000-01-13  0:00     ` Ada Magnus Alexandersson
2000-01-14  0:00       ` Ada Tarjei T. Jensen
2000-01-14  0:00         ` Ada Larry Kilgallen
2000-01-14  0:00           ` Ada Marin D. Condic
2000-01-14  0:00             ` Ada Magnus Alexandersson
2000-01-14  0:00               ` Ada Marin D. Condic
1999-12-23  0:00 ` Ada Jon Jensen
1999-12-23  0:00 ` Ada Greg Martin
     [not found] <MPG.12c98531dcc142319896ce@news.uci.kun.nl>
     [not found] ` <83reu2$2soi$1@msunews.cl.msu.edu>
     [not found]   ` <38615cc4.22862595@news.shuswap.net>
     [not found]     ` <84dnsu$g69@nnrp1.farm.idt.net>
     [not found]       ` <84drm7$ss8$1@news.rchland.ibm.com>
     [not found]         ` <855lqp$t2@nnrp4.farm.idt.net>
     [not found]           ` <ey3vh54ybxh.fsf@cley.com>
     [not found]             ` <85l4kt$e9q@nnrp1.farm.idt.net>
     [not found]               ` <y4wvpdknsm.fsf@mailhost.neuroinformatik.ruhr-uni-bochum.de>
2000-01-14  0:00                 ` Ada Andy Glew
2000-01-14  0:00                   ` Ada Chris Morgan
2000-01-14  0:00                   ` Ada Marin D. Condic
2000-01-15  0:00                     ` Ada Andy Glew
2000-01-15  0:00                       ` Ada Chris Morgan
2000-01-15  0:00                       ` Ada Marin D. Condic
2005-01-26 20:06 Ada mcf501
2005-01-26 20:24 ` Ada Larry Kilgallen
2005-01-26 23:55   ` Ada Stephen Leake
2005-01-26 20:35 ` Ada Frank J. Lhota
2005-01-26 23:57   ` Ada Stephen Leake
2005-01-26 20:57 ` Ada Ludovic Brenta
2005-01-26 23:54 ` Ada Stephen Leake
2005-01-27  0:42 ` Ada Jeffrey Carter
2005-01-27  1:17   ` Ada Larry Kilgallen
2005-01-27  4:43     ` Ada u_int32_t
2005-01-27  8:10       ` Ada Larry Kilgallen
2005-01-27 21:01       ` Ada Björn Lundin
2005-01-27  7:57 ` Ada Frank Piron
2005-01-27 10:53   ` Ada Larry Kilgallen
2005-01-27 11:05     ` Ada Frank Piron
2005-01-27 11:19     ` Ada Adrien Plisson
2005-01-28 10:27     ` Ada Stephen Leake
2005-01-27  9:12 ` Ada Martin Krischik
replies disabled

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