comp.lang.ada
 help / color / mirror / Atom feed
From: Robert Dewar <robert_dewar@my-dejanews.com>
Subject: Re: Does this model work ?
Date: 1999/05/16
Date: 1999-05-16T00:00:00+00:00	[thread overview]
Message-ID: <7hmda1$khp$1@nnrp1.deja.com> (raw)
In-Reply-To: 7hhj6q$cjn$1@nnrp1.deja.com

In article <7hhj6q$cjn$1@nnrp1.deja.com>,
  dennison@telepath.com wrote:
> I don't think this feat would be possible in any other
> language.

Such claims alway make me uneasy.

It is perfectly possible to write code that is in practice
close to perfectly portable in COBOL, Fortran, C, or several
other standardized languages.

As in Ada, the main barrier to portability is deliberate or
accidental use of implementation dependent features.

Yes, it is fair to say that Ada makes achieving this portability
easier. I think there are four reasons for that.

1. Portability requires discipline, and the Ada programming
   culture tends to be more disciplined.

2. Ada discourages extensions, which are a frequent cause of
   non-portability.

3. Ada programmers tend to be more familiar with the standard
   for the language

4. Ada is designed to promote portability (e.g. portable
   integer types).

However, Ada is no panacea. Over and over again, we run into
cases where incompetence or deliberate (in-retrospect-poort)
decisions have lead to highly non-portable code, and this can
often be eacerbated by management or incompetent Ada vendor
sales people who have sold the idea that Ada guarantees
100% portability. That's wrong, it does not.

However, the above four factors are quite powerful, and in
practice have lead to many success stories like the one quoted
here!

For an example of a highly portable C program, consider the
gcc compiler itself. This is one of the portable benchmarks
in the Spec suite, and runs unchanged on all targets with C
compilers that run Spec (which is essentially 100% of all
C compatible targets).



--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




  reply	other threads:[~1999-05-16  0:00 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-05-14  0:00 Does this model work ? Jean-Marten Marchi
1999-05-14  0:00 ` Al Christians
1999-05-14  0:00   ` Jean-Marten Marchi
1999-05-15  0:00     ` Florian Weimer
1999-05-15  0:00       ` bglbv
1999-05-16  0:00         ` Tom Moran
1999-05-16  0:00       ` David Botton
1999-05-16  0:00         ` Robert Dewar
1999-05-16  0:00       ` Robert Dewar
1999-05-14  0:00   ` Jean-Marten Marchi
1999-05-16  0:00     ` Robert Dewar
1999-05-16  0:00       ` Jean-Marten Marchi
1999-05-17  0:00       ` Roger Racine
1999-05-14  0:00 ` dennison
1999-05-16  0:00   ` Robert Dewar [this message]
1999-05-16  0:00     ` Andi Kleen
1999-05-17  0:00       ` Robert Dewar
1999-05-17  0:00     ` jrcarter001
1999-05-17  0:00       ` Robert Dewar
1999-05-18  0:00     ` dennison
1999-05-19  0:00       ` Robert Dewar
1999-05-19  0:00         ` dennison
     [not found]   ` <01be9ee1$eca9be10$022a6282@dieppe>
1999-05-15  0:00     ` Al Christians
1999-05-16  0:00       ` Larry Kilgallen
1999-05-16  0:00       ` Robert Dewar
1999-05-17  0:00       ` Pascal Obry
1999-05-17  0:00         ` Marin David Condic
1999-05-20  0:00           ` Robert Dewar
1999-05-20  0:00             ` Marin David Condic
1999-05-16  0:00     ` Jean-Marten Marchi
1999-05-16  0:00 ` Robert Dewar
1999-05-16  0:00   ` Jean-Marten Marchi
1999-05-17  0:00     ` Robert Dewar
1999-05-17  0:00       ` Jean-Marten Marchi
1999-05-18  0:00         ` Samuel T. Harris
1999-05-20  0:00           ` Jean-Marten Marchi
1999-05-20  0:00             ` Samuel Mize
1999-05-20  0:00               ` David Botton
1999-05-20  0:00                 ` Samuel Mize
1999-05-20  0:00             ` Samuel T. Harris
1999-05-17  0:00       ` Jean-Marten Marchi
1999-05-18  0:00     ` dennison
replies disabled

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