comp.lang.ada
 help / color / mirror / Atom feed
From: Richard Riehle <laoXhai@ix.netcom.com>
Subject: Re: From extended Pascals to Ada 95 guide
Date: 2000/08/28
Date: 2000-08-28T22:52:41+00:00	[thread overview]
Message-ID: <39AAED55.6EA4E810@ix.netcom.com> (raw)
In-Reply-To: slrn8qcthd.25ck.marcov@toad.stack.nl



Marco van de Voort wrote:

> >As for submarines, you're right. Since C/C++ is said to replace Ada in US embedded
> >systems.. glups...

Can you document this?  I know of some cases where irresponsible or ignorant systems
engineers
have specified C++ instead of Ada, but there continues to be a lot of Ada in many of
the systems I know about.

Anyone who would select C++ instead of Ada for a safety-critical military weapon
systems either
1) does not understand Ada, 2) does not understand C++, 3) does not understand either
one, or
4) has some agenda that supercedes reliability and technical excellence.   I frequently
encounter
all four situations in my software practice.

There may be some alternative emerging within the C family of languages:  C#.  I
recently attended
a briefing on that language.   It may improve on the reliability issues so rampant in
C++ and rectify
some of the concerns relative to Java.   Of course, it is still a new language offering
and has a
job of persuading real software developers to adopt it.

So far, though, no programming language quite measures up to Ada when reliability and
safety
concerns are the key issues.   I personally like Smalltalk and Eiffel, but would not
choose either
when developing something as important as a military system, a communications
satellite, a
cardiac control unit, flight control systems, or the many other kinds of software that,
if there is
an accident, can result in the death or maiming of unintended humans.

Modula-2 and Modula-3 fall short of the requirement.  C++ falls far short of the
requirement.
Oberon is a step in the right direction.   Eiffel, as a language, has potential for the
future but the
implementations are not at the right level of maturity.   Java is an interesting
offering, but more
of a research topic in many respects.  It is also a good teaching tool. Perhaps it will
improve with time.

When one studies this issue really carefully, with the goal of reliability and safety
in mind, the decision in favor
of Ada naturally falls out as the right one.  It is an engineering decision, not a
programming language decision.
Very few software developers, and even fewer software development managers, are trained
to consider
engineering issues in constructing software.  If one is designing for one of the
popular desktop operating
systems, many of which are inherently defect-infested themselves, there may be minimal
benefit in
selecting a language focused on error-free software.   In that case, C++, Java,
Smalltalk and other popular
languages are fun to use.   I wonder how many C++ programmers would trust their lives
to flying in
an airplane programmed in that language.

Well, this is just Richard preaching to choir again.   Sorry for the rant.   It is the
end of a long day and I just
reviewed this thread, discovering it failed to focus on what is and is not important --
at least to my mind.

Richard Riehle











  parent reply	other threads:[~2000-08-28  0:00 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-08-24  0:00 From extended Pascals to Ada 95 guide gdemont
2000-08-24  0:00 ` James Smith
2000-08-24  0:00   ` ODRe: " Richard Riehle
2000-08-29  0:00     ` James Smith
2000-08-30  0:00       ` Marco van de Voort
2000-08-25  0:00   ` Tarjei T. Jensen
2000-08-25  0:00   ` Gautier
2000-08-25  0:00     ` Marco van de Voort
2000-08-25  0:00       ` Gautier
2000-08-25  0:00         ` Marco van de Voort
2000-08-25  0:00           ` Charles Hixson
2000-08-26  0:00             ` steve
2000-08-26  0:00               ` Marco van de Voort
2000-08-27  0:00               ` David Botton
2000-08-28  6:41                 ` Ole-Hjalmar Kristensen
2000-08-28  0:00                   ` David Botton
2000-08-28  0:00             ` Marco van de Voort
2000-08-28  0:00               ` Gautier
2000-08-28  0:00                 ` Marco van de Voort
2000-08-28  0:00                   ` Gautier
2000-08-28  0:00                     ` Charles Hixson
2000-08-28  0:00                   ` Marin D. Condic
2000-08-28  0:00                     ` Marco van de Voort
2000-08-28  0:00                       ` Larry Elmore
2000-08-28  0:00                       ` Gautier
2000-08-28  0:00                         ` Marco van de Voort
2000-08-28  0:00           ` Richard Riehle [this message]
2000-08-29  6:53             ` Marco van de Voort
2000-08-25  0:00     ` Preben Randhol
2000-08-25  0:00       ` Pat Rogers
2000-08-25  0:00         ` Marin D. Condic
2000-08-25  0:00           ` Pat Rogers
2000-08-26  0:00             ` Marin D. Condic
2000-08-25  0:00           ` Larry Elmore
2000-08-26  0:00             ` Dimmy Timchenko
2000-08-26  0:00             ` Marin D. Condic
2000-08-27  0:00               ` David Botton
2000-08-27  0:00                 ` Marin D. Condic
2000-08-27  0:00                   ` David Botton
2000-08-28  0:00                     ` Marin D. Condic
2000-08-27  0:00                   ` tmoran
2000-08-28  0:00                     ` Marin D. Condic
2000-08-29  0:00                       ` Gautier
     [not found]                     ` <017801c0105d$06e88ac0$cf18b70a@db2000>
2000-08-27  0:00                       ` tmoran
2000-08-28  0:00                         ` Marin D. Condic
2000-08-28  0:00                       ` Larry Kilgallen
2000-09-06  0:18                   ` John English
2000-08-28  0:00               ` Ray Blaak
2000-08-26  0:00           ` Robert C. Leif, Ph.D.
2000-08-26  0:00     ` Robert C. Leif, Ph.D.
2000-08-25  0:00   ` Robert Deininger
2000-08-27  0:00   ` Ronald Cole
2000-08-27  0:00     ` David Starner
2000-08-27  0:00       ` Al Christians
2000-08-28  0:00         ` Marco van de Voort
2000-08-28  0:00           ` Gautier
2000-08-28  0:00             ` Marco van de Voort
2000-08-28  0:00           ` Al Christians
2000-08-28  0:00             ` Ray Blaak
2000-08-28  0:00         ` nabbasi
2000-08-29  0:00           ` David Starner
2000-08-29  0:00             ` Charles Hixson
2000-08-30  0:00               ` Gary Scott
2000-08-30  0:00                 ` Charles Hixson
2000-08-30  0:00                   ` Gary Scott
2000-08-29  0:00           ` Larry Kilgallen
2000-08-29  0:00             ` Marco van de Voort
2000-08-29  0:00               ` Jonas Maebe
2000-08-29  0:00               ` Gautier
2000-08-29  0:00                 ` Marco van de Voort
2000-09-06  0:38               ` John English
2000-09-08 18:41                 ` Stefan Skoglund
2000-09-08 19:24                   ` Marco van de Voort
2000-09-09 17:50                     ` Stefan Skoglund
2000-09-10 16:40                       ` Marco van de Voort
2000-09-11  0:59                         ` Ken Garlington
2000-09-11 13:01                   ` John English
2000-09-11 14:45                     ` Ehud Lamm
2000-09-11 19:32                       ` Marco van de Voort
2000-09-27 23:03                       ` John English
2000-08-29  0:00           ` Brian Rogoff
2000-08-29  0:00           ` Ehud Lamm
2000-09-06  0:26           ` John English
2000-09-06 16:08             ` Charles Hixson
2000-08-28  0:00       ` Marco van de Voort
2000-08-27  0:00     ` Richard Kenner
2000-08-28  0:00       ` Ronald Cole
     [not found] <01a101c0106f$745c3c70$cf18b70a@db2000>
2000-08-28  0:48 ` tmoran
replies disabled

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