comp.lang.ada
 help / color / mirror / Atom feed
From: ken@nrtt.demon.co.uk (Ken Tindell)
Subject: Re: Ada and Automotive Industry
Date: 1996/11/11
Date: 1996-11-11T00:00:00+00:00	[thread overview]
Message-ID: <bb7cc$a135.248@marius> (raw)
In-Reply-To: 32812D6B.ABD@hso.link.com


In article <32812D6B.ABD@hso.link.com>
"Stanley R. Allen" <s_allen@hso.link.com> wrote:
> The 1750A processor is in that category -- plenty of
> Ada vendors have fine products for it.  But the point
> of the story was that, contrary to popular mis-
> conception,  there is nothing about Ada that
> *implies* bad performance; and if Ada can beat C
> or assembly on a DSP, there's no reason it can't
> on any other platform; and it's been proven on
> others as well.

There's quite a lot in Ada that does indeed imply
bad performance. Quite a few optimization techniques
are disallowed because of the elaboration and
evaluation rules (see papers by Mike Kamrad for
examples).

>> Also code size is much more important to the auto
>> industry than to aerospace.  If GM, Ford, or Honda
>> have to use a larger PROM in a product they'll have to
>> buy a million of them in a cost sensitive market.
>> Aerospace industry products rarely have production runs
>> larger than a few thousand, and are often rather
>> cost insensitive.
> 
> Ditto for code size.  Perhaps you were "burned" by
> some early Ada implementation; if so, let me suggest
> that the idea that "Ada implies mega object code"
> hasn't been true in the embedded market since
> 1988.  As I said in the previous post, the Ada83
> compiler market was very competitive; the
> optimizing techniques employed were not limited
> to speed.

You still miss the point. If Ada implementations costs
20% more code space then that's a few cents per unit.
But a few cents per unit added up over millions of
units adds up to a lot of money.
 
>> When I did Ada work at Boeing, I found a quote calling
>> Ada "PASCAL for lawyers."  The LRM for Ada 83 was a huge,
>> dense document full of legalese.
> 
> This is a red herring.  Obviously, an LRM for any
> standardized language has to be "legalese" in part;
> check out the draft ISO C++ LRM.  There are plenty
> of well-written Ada textbooks that provide good
> introductions to the language, many of them
> targeted to first year programming students and
> some even to high-school students.  The language
> itself is very elegant and consistent.  I taught
> Ada for two years in a junior-level class at
> my local university -- the students caught on
> very well, and, based on the final projects,
> seemed to have learned the software principles
> also.  We never had to open the LRM.

It's not a red herring. Ada is hugely complex, and not
well understood. If you think that Ada is elegant and
consistent then you don't understand it very well. You
only have to look at the "Dear Ada" column in ACM
Ada Letters to see this (I really recommend you do
read the column!).

Tony Hoare once said that one of the keys to success in language
design was to make it so simple that there are obviously no
deficiencies. The other way is to make it so complicated that
there are no obvious deficiencies.

>> Ada was supposed to be used to build avionics, like autopilots.
>> When we started thinking about how to build an autopilot in Ada 83
>> it immediately became apparent that the Ada 83 tasking model
>> didn't work.  Why not?  Because you could not schedule a time
>> critical task.  An autopilot must update inputs and outputs
>> regularly, say 20 times a second.  In Ada 83 you can't
>> schedule a periodic event reliably -- no Ada task was
>> guaranteed to run at the time requested.  Everyone I knew
>> who used Ada for avionics in the 80s wrote their own scheduler.
>>
>> Note that automotive systems must handle periodic events.
> 
> Yes, there were problems with Ada83 tasking.  But it
> isn't impossible.  We use vanilla Ada83 tasking in
> our (big) hard real-time simulator for the space
> station, and we didn't have to write our own scheduler.

It is impossible. Ada 83 tasking cannot be used reliably for real-time
(as the Boeing people above mentioned). Ada 95 tasking still leaves a big
efficiency problem, which is crucial to the automotive industry,
where a few cents on a control unit add up to millions over a product
life.

The only role for Ada in the automotive industry is in areas where cost
is not important, and where there is a significant improvement in
reliability over existing languages.

Ken Tindell
NRTT Ltd.






  parent reply	other threads:[~1996-11-11  0:00 UTC|newest]

Thread overview: 163+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-11-01  0:00 Ada and Automotive Industry ETHoierman
1996-11-05  0:00 ` Stanley R. Allen
1996-11-06  0:00 ` Stanley R. Allen
1996-11-06  0:00   ` James Thiele
1996-11-06  0:00     ` Stanley R. Allen
1996-11-07  0:00       ` Dale Stanbrough
1996-11-11  0:00       ` Ken Tindell [this message]
1996-11-11  0:00         ` Matthew Heaney
1996-11-11  0:00           ` Philip Brashear
1996-11-11  0:00         ` Robert Dewar
1996-11-07  0:00     ` Frank Manning
1996-11-11  0:00     ` Norman H. Cohen
1996-11-11  0:00     ` Frank Manning
1996-11-13  0:00       ` Ken Tindell
1996-11-13  0:00       ` Richard Riehle
1996-11-14  0:00         ` Jack Patteeuw
1996-11-16  0:00           ` David Taylor
1996-11-20  0:00             ` Richard Riehle
1996-11-21  0:00               ` Dave Wood
1996-11-21  0:00             ` Art Schwarz
1996-11-22  0:00               ` Robert B. Love 
1996-11-22  0:00               ` Ken Tindell
1996-11-24  0:00               ` "Paul E. Bennett"
1996-11-18  0:00           ` David Taylor
1996-11-17  0:00         ` Robert Dewar
1996-11-18  0:00           ` Ken Tindell
1996-11-22  0:00             ` Robert Dewar
1996-11-22  0:00             ` Richard Kenner
1996-11-23  0:00               ` James Thiele
1996-11-27  0:00                 ` Richard Kenner
1996-12-05  0:00             ` Michael Warner
1996-11-20  0:00           ` Richard Riehle
1996-11-23  0:00             ` Robert Dewar
1996-11-25  0:00               ` Ken Tindell
1996-11-25  0:00               ` Richard Riehle
1996-11-27  0:00                 ` Ken Garlington
1996-12-01  0:00                   ` Richard Riehle
1996-11-27  0:00                 ` Robert Dewar
1996-11-29  0:00                   ` Richard Riehle
1996-12-02  0:00                   ` Chris Hills
1996-12-04  0:00                   ` Jon S Anthony
1996-11-27  0:00                 ` Robert Dewar
1996-11-24  0:00             ` Richard Kenner
1996-11-25  0:00               ` Richard Riehle
1996-11-25  0:00               ` Ken Tindell
1996-11-26  0:00                 ` John Dammeyer
1996-11-26  0:00                   ` Ken Garlington
     [not found]           ` <Pine.GSO.3.95.961120154239.3 <Pine.GSO.3.95.961201100430.21598A-100000@nunic.nu.edu>
1996-12-01  0:00             ` James Thiele
1996-11-27  0:00         ` Jon S Anthony
1996-12-03  0:00           ` Richard A. O'Keefe
1996-12-03  0:00             ` Ted Dennison
1996-12-11  0:00             ` Richard Riehle
1996-12-13  0:00               ` Ted Dennison
1996-11-14  0:00     ` Robert I. Eachus
1996-11-15  0:00       ` William P. Milam
1996-11-08  0:00   ` Robert I. Eachus
1996-11-08  0:00     ` James Thiele
1996-11-08  0:00       ` nasser
1996-11-09  0:00         ` Robert Dewar
1996-11-22  0:00           ` Dirk Dickmanns
1996-11-10  0:00       ` Matthew Heaney
1996-11-11  0:00         ` Robert Dewar
1996-11-11  0:00           ` James Thiele
1996-11-12  0:00             ` Robert Dewar
1996-11-12  0:00       ` Richard A. O'Keefe
1996-11-12  0:00         ` Robert Dewar
1996-11-13  0:00           ` Richard A. O'Keefe
1996-11-14  0:00         ` William P. Milam
1996-11-19  0:00           ` Richard A. O'Keefe
1996-11-15  0:00       ` Robert Dewar
1996-11-16  0:00         ` Adam Beneschan
1996-11-22  0:00           ` Robert Dewar
1996-11-16  0:00         ` Geert Bosch
1996-11-21  0:00           ` Robert Dewar
1996-11-15  0:00       ` Robert Dewar
1996-11-11  0:00     ` Ken Tindell
1996-11-11  0:00       ` Robert Dewar
1996-11-11  0:00       ` Matthew Heaney
1996-11-08  0:00   ` Ken Garlington
     [not found]   ` <847341612snz@transcontech.co.uk>
1996-11-10  0:00     ` Robert Dewar
1996-11-12  0:00       ` "Paul E. Bennett"
1996-11-15  0:00   ` Robert I. Eachus
1996-11-15  0:00     ` Robert Dewar
1996-11-18  0:00       ` Ken Tindell
1996-11-18  0:00         ` Robert Dewar
1996-11-19  0:00         ` Richard A. O'Keefe
1996-12-05  0:00         ` Michael Warner
1996-12-06  0:00           ` Robert Dewar
1996-11-15  0:00     ` John Howard
1996-11-15  0:00     ` William P. Milam
1996-11-21  0:00     ` James Weaver
1996-11-21  0:00   ` Robert I. Eachus
1996-11-22  0:00   ` Chris Hills
1996-11-22  0:00   ` Jon S Anthony
1996-11-23  0:00   ` Ralph Paul
1996-11-24  0:00   ` Otto Lind
1996-11-25  0:00     ` Richard Kenner
1996-11-28  0:00       ` Eyal Ben-Avraham
1996-11-29  0:00         ` Richard Kenner
1996-11-25  0:00   ` Robert I. Eachus
1996-11-26  0:00   ` Jon S Anthony
1996-11-26  0:00   ` Jon S Anthony
1996-11-27  0:00   ` Jon S Anthony
1996-11-27  0:00   ` Jon S Anthony
1996-12-01  0:00   ` Chris Hills
1996-12-01  0:00     ` Robert Dewar
1996-12-01  0:00     ` Robert Dewar
1996-12-02  0:00     ` Robert A Duff
1996-12-02  0:00   ` Chris Hills
1996-12-03  0:00     ` Andy Ashworth
1996-12-03  0:00       ` Ian Ward
1996-12-03  0:00   ` Ken Garlington
1996-12-03  0:00   ` Ted Dennison
1996-12-03  0:00   ` George Romanski
1996-12-05  0:00     ` Ken Tindell
1996-12-04  0:00   ` Jon S Anthony
1996-12-11  0:00   ` Robert I. Eachus
1996-12-13  0:00   ` Ted Dennison
1996-12-13  0:00     ` Robert Dewar
1996-12-14  0:00   ` Chris Hills
1996-12-19  0:00     ` Ian Ward
1996-12-17  0:00   ` Robert I. Eachus
1996-12-18  0:00     ` Robert Dewar
1996-12-19  0:00   ` Robert I. Eachus
  -- strict thread matches above, loose matches on Subject: below --
1996-11-11  0:00 James Thiele
1996-11-12  0:00 James Thiele
1996-11-13  0:00 ` Ken Garlington
1996-11-13  0:00 ` Frank Manning
1996-11-13  0:00 ` Robert Dewar
1996-11-15  0:00   ` Ken Garlington
1996-11-12  0:00 James Thiele
1996-11-13  0:00 Marin David Condic, 561.796.8997, M/S 731-93
1996-11-13  0:00 ` Ken Garlington
1996-11-24  0:00 Ingemar Persson
1996-11-25  0:00 Ada and automotive industry W. Wesley Groleau (Wes)
1996-11-27  0:00 Ada and Automotive Industry W. Wesley Groleau (Wes)
     [not found] <1996Nov30.130532.522@decus.org.nz>
1996-12-02  0:00 ` Ken Garlington
     [not found] <1996Dec2.221233.523@decus.org.nz>
1996-12-02  0:00 ` Ken Garlington
1996-12-05  0:00 Franco Mazzanti
1996-12-06  0:00 ` Robert Dewar
1996-12-11  0:00 ` Robert I. Eachus
1996-12-13  0:00   ` Ted Dennison
1996-12-15  0:00     ` Robert Dewar
1996-12-17  0:00       ` Tucker Taft
1996-12-18  0:00       ` Keith Thompson
1996-12-18  0:00         ` Keith Thompson
1996-12-18  0:00       ` Geert Bosch
1996-12-18  0:00       ` Robert A Duff
1996-12-18  0:00         ` Robert Dewar
1996-12-18  0:00           ` Robert A Duff
1996-12-18  0:00             ` Ken Garlington
1996-12-19  0:00               ` Robert A Duff
1996-12-20  0:00                 ` Philip Brashear
1996-12-20  0:00                   ` Robert Dewar
1996-12-22  0:00               ` Robert Dewar
1996-12-23  0:00                 ` Ken Garlington
1996-12-17  0:00 ` Robert I. Eachus
1996-12-10  0:00 Franco Mazzanti
1996-12-11  0:00 Franco Mazzanti
1996-12-11  0:00 ` Robert Dewar
1996-12-13  0:00 ` Robert I. Eachus
     [not found] <1996Dec11.220521.525@decus.org.nz>
1996-12-11  0:00 ` Ken Garlington
1996-12-13  0:00 Franco Mazzanti
replies disabled

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