From: Richard D Riehle <laoXhai@ix.netcom.com>
Subject: Re: Ada OO Mechanism
Date: 1999/05/25
Date: 1999-05-25T13:02:08-07:00 [thread overview]
Message-ID: <7ievk0$prt@sjx-ixn9.ix.netcom.com> (raw)
In-Reply-To: t7iu9hrqpw.fsf@calumny.jyacc.com
In article <t7iu9hrqpw.fsf@calumny.jyacc.com>,
Hyman Rosen <hymie@prolifics.com> wrote:
>Once again, I will ask for an example demonstrating this, where
>something is more complicated to use in C++ generics than in Ada.
>This will make you the fourth person I have asked for this type
>of example, the others being Richard D. Riehle, Samuel Mize, and
>Robert Dewar. None of the others have chosen to post such an
>example.
I have a wonderful little proof that this is the case but this
margin is too narrow for me to write it in its entirety. To
paraphrase G.B. Shaw, "One an lay all the language advocates
in the world end to end and still not reach a conclusion."
There are certainly benefits to the C++ approach for generic
programming, which is how Dr. Stroustrup refers to templates
in his own book and how Ada refers to the same subject. There
are also benefits to the Ada approach. There were inadequacies
with the Ada model for generics before the addition of the
"with package ..."
construct. There were serious problems with C++ prior to adding
the typename reserved word. Both languages are evolving. I prefer
the Ada model for most designs. However, the syntax of C++ is a
little more straightforward. The Ada syntax is designed to enforce
a stricter set of type checking rules. C++ can also, in most but not
all, cases do strict type checking. There are published examples of
this. One of my favorite columns is in a magazine, C++ Report, called
"Obfuscated C++." The monthly examples illustrate the central idea.
Take any of the examples from that column and try to create equally
obfuscated Ada. In fact, try to create an "obfuscated" Ada program.
Pretty difficult (not impossible).
I am not going to engage in dueling source code where anything I
can play on my banjo you can play your guitar and Robert can play
on his pipe organ. On the other hand, Tocatta and Fuge in D Minor
is a bit of a stretch for my banjo and Foggy Mountain Breakdown
sounds a little strange on the pipe organ.
C++ is a great language for graphics and other stuff that is not
safety-critical. It would seem to me, strange, to select it as
the language for flight avionics, air traffic control, or other
projects where human life is at stake. I know people do this, but
knowing a little bit about both Ada and C++, I find it scary when
someone decides to use C++ in this situation. On the other hand,
for high-speed graphics where safety is not a factor, C++ might ]
often be a better choice than Ada. Some instruments just do better
for certain kinds of music.
Richard Riehle
richard@adaworks.com
http://www.adaworks.com
next prev parent reply other threads:[~1999-05-25 0:00 UTC|newest]
Thread overview: 116+ messages / expand[flat|nested] mbox.gz Atom feed top
1999-05-20 0:00 Ada OO Mechanism Shawn M. Root
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 ` David Botton
1999-05-24 0:00 ` Hyman Rosen
1999-05-24 0:00 ` Robert Dewar
1999-05-24 0:00 ` Hyman Rosen
1999-05-24 0:00 ` David Starner
1999-05-24 0:00 ` bob
1999-05-24 0:00 ` David Starner
1999-05-25 0:00 ` Ole-Hjalmar Kristensen
1999-05-25 0:00 ` Florian Weimer
1999-05-25 0:00 ` Mark A Biggar
1999-05-25 0:00 ` Hyman Rosen
1999-05-25 0:00 ` Richard D Riehle [this message]
1999-05-25 0:00 ` David Botton
1999-05-26 0:00 ` Tom Moran
1999-05-27 0:00 ` Aidan Skinner
1999-05-25 0:00 ` Samuel Mize
1999-05-25 0:00 ` Hyman Rosen
1999-05-25 0:00 ` Samuel Mize
1999-05-25 0:00 ` Chris
1999-05-25 0:00 ` David Botton
1999-05-27 0:00 ` Aidan Skinner
1999-05-27 0:00 ` Gautier
1999-05-27 0:00 ` Samuel Mize
1999-05-25 0:00 ` Brian Rogoff
1999-05-25 0:00 ` Jim
1999-05-26 0:00 ` Robert Dewar
1999-05-26 0:00 ` Brian Rogoff
1999-05-25 0:00 ` Richard D Riehle
1999-05-25 0:00 ` Hyman Rosen
1999-05-26 0:00 ` Ray Blaak
1999-05-26 0:00 ` Hyman Rosen
1999-05-26 0:00 ` Richard D Riehle
1999-05-26 0:00 ` Hyman Rosen
1999-05-27 0:00 ` Richard D Riehle
1999-06-05 0:00 ` Matthew Heaney
1999-06-07 0:00 ` Hyman Rosen
1999-05-28 0:00 ` Laurent Guerby
1999-06-05 0:00 ` Matthew Heaney
1999-06-07 0:00 ` Hyman Rosen
1999-06-08 0:00 ` Robert Dewar
1999-06-08 0:00 ` Stanley R. Allen
1999-06-08 0:00 ` Markus Kuhn
1999-06-08 0:00 ` Stanley R. Allen
1999-06-08 0:00 ` Matthew Heaney
1999-06-08 0:00 ` Hyman Rosen
1999-06-08 0:00 ` Samuel Mize
1999-06-08 0:00 ` Hyman Rosen
[not found] ` <t7zp2sr6yf.fsf@calumny.jyacc.c <t7r9nmz8ou.fsf@calumny.jyacc.com>
1999-06-08 0:00 ` Larry Kilgallen
1999-06-08 0:00 ` Hyman Rosen
1999-06-14 0:00 ` Robert A Duff
[not found] ` <t7zp2sr6yf.fsf@calumny.jyacc.c <t7emjmmx8w.fsf@calumny.jyacc.com>
1999-06-08 0:00 ` Larry Kilgallen
1999-06-08 0:00 ` Hyman Rosen
1999-06-08 0:00 ` Tucker Taft
1999-06-08 0:00 ` Brian Rogoff
1999-06-09 0:00 ` Tucker Taft
[not found] ` < <375E92CB.27850620@averstar.com>
1999-06-09 0:00 ` Brian Rogoff
1999-06-14 0:00 ` Robert A Duff
1999-06-09 0:00 ` Robert Dewar
1999-06-09 0:00 ` Matthew Heaney
1999-06-09 0:00 ` Samuel Mize
[not found] ` <t7zp2sr6yf.fsf@calumny.jyacc.c <375d9a3d.e1cccc63@averstar.com>
1999-06-09 0:00 ` Larry Kilgallen
1999-06-09 0:00 ` Tucker Taft
1999-05-27 0:00 ` Samuel Mize
1999-05-27 0:00 ` Hyman Rosen
1999-05-28 0:00 ` Samuel Mize
1999-05-28 0:00 ` Laurent Guerby
1999-05-28 0:00 ` Richard D Riehle
1999-05-28 0:00 ` Tom Moran
1999-05-27 0:00 ` Samuel Mize
1999-05-27 0:00 ` Jon S Anthony
1999-05-28 0:00 ` Robert I. Eachus
1999-05-28 0:00 ` Brian Rogoff
1999-05-29 0:00 ` Ehud Lamm
1999-05-30 0:00 ` chris
1999-05-30 0:00 ` Robert Dewar
1999-05-30 0:00 ` Harry George
1999-05-30 0:00 ` Vladimir Olensky
1999-05-31 0:00 ` Robert Dewar
1999-05-31 0:00 ` Vladimir Olensky
1999-06-03 0:00 ` Dale Stanbrough
1999-06-02 0:00 ` mike
1999-06-03 0:00 ` Robert Dewar
1999-06-06 0:00 ` David Botton
1999-06-07 0:00 ` Robert Dewar
1999-06-01 0:00 ` Richard D Riehle
1999-06-03 0:00 ` Matthew Heaney
1999-06-03 0:00 ` Matthew Heaney
1999-05-24 0:00 ` Mike
1999-05-25 0:00 ` Robert Dewar
1999-05-25 0:00 ` Samuel Mize
1999-05-25 0:00 ` Hyman Rosen
1999-05-25 0:00 ` David Starner
1999-05-26 0:00 ` Laurent Guerby
1999-05-26 0:00 ` Hyman Rosen
1999-05-28 0:00 ` Laurent Guerby
1999-06-01 0:00 ` Hyman Rosen
1999-06-03 0:00 ` Fraser Wilson
1999-05-26 0:00 ` Ole-Hjalmar Kristensen
1999-06-03 0:00 ` Matthew Heaney
1999-06-03 0:00 ` Hyman Rosen
1999-05-21 0:00 ` Dale Stanbrough
1999-05-20 0:00 ` bob
1999-05-21 0:00 ` Dale Stanbrough
1999-05-21 0:00 ` Richard D Riehle
1999-05-21 0:00 ` Marin David Condic
1999-05-21 0:00 ` Steve
1999-05-21 0:00 ` Dan Nagle
1999-05-24 0:00 ` Marin David Condic
1999-05-21 0:00 ` Shawn M. Root
1999-05-21 0:00 ` Richard D Riehle
1999-05-25 0:00 ` Shawn M. Root
1999-05-25 0:00 ` Don Overheu
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox