[comp.lang.ada] C++ to Ada?

ted@grebyn.com (Ted Holden) (01/03/90)

 
 
From:  Dick Dunn
 
>So...we know that we can preprocess C++ -> C.  I suspect one can preprocess
>to get C -> Ada.  Combine the two and you've got a tool analogous to
>"Classic Ada" except that its input looks like C++. [...]
 
[Various replies....]
 
You people seem to have your fairy-tale backwards.  It was the guy who
transmuted base metal into gold who the emperor rewarded;  the guy who
transmuted the gold into donkey dukey got hung.
 
From: Bill Wolf, Clemson
 
>   I personally would consider the use of a C++-to-Ada preprocessor for
>   the development of new code to be entirely out of the spirit of Ada.
 
Why are you and your friends even considering such a thing, Bill?
Having problems with Ada again?  I mean, I'm not sitting here
considering translating Smalltalk or Eiffel into C++ or any of MY
languages...
 
 
>   In my view, the dividing line is as follows:
 
>   [long theological discussion on when translating into Ada is
     permissible...]
 
>         1) The use of preprocessing techniques is limited to those
>            situations in which specific, indispensable requirements
>            cannot be satisfied using Ada alone, without incurring
>            extraordinary and disastrous expenses.
 
 
Such as when a project actually needs to get done?  Problem is, you've
still got the whole thing backwards.  What you need is a good Ada --> C
or Ada --> C++ translater.
 
Funny that somebody so heavily into Ada seems to think in terms of
"extraordinary and disasterous expenses" as if such terminology were
descriptive of everyday facts of life.  I mean, your language kinds
of gives away the nature of your game, if you know what I mean.
 
In fact, it almost sounds poetic, as if...
 
"...caught from some unhappy master             Poe
whom unmerciful disaster
followed fast, and followed faster..."
 
"...till this sorry, wretched bastard           Holden
turned to grace, to C once more;
flung the Ada monster back
into the night's plutonian shore,
crying 'Never... nevermore'"
 
or something like that.
 
I mean, if I were programming in Ada, I'd keep a copy of Poe's works right
next to the terminal.  Seems fitting.
 
>   Similarly, the undisciplined practices which
>   are common among the users of C and C++ would not simply vanish during the
>   translation process.....
 
Undisciplined practices?
 
Such as bringing projects in on time and under budget??   Can't have
that, now, can we?
 
From:  Horst Kern, Muenchen; West-Germany
 
>Okay, I can see the  problem:  Even  though  everyone  was  called  to
>participate  in  the  Ada effort, some people - like Edsgar Dijkstra -
>have given their reasons for repelling all  three  language  proposals
>and  are  now hoping that the Russians will use Ada too. (He made this
>statement 6 years ago so it is perhaps not up to date any more.)
 
Turns out, the Russians aren't that stupid.  I asked a couple of them
about it recently;  their reply was something like "Kommunizm nam
obespechivaet s gorami i neshchactiem dostatochno..."  (communism
provides us with all the grief and heartache we require).  They appear
to be programming mostly in C these days.
 
>The current discussion makes it evident that the laws (again this word
>which  is  so much disliked) of nature have not yet been discovered in
>computer science. So I think it is a good discussion and nobody should
>tell Ted Holdon to shut up.
 
They were telling me to shut up because their side of the net looks like
a steady stream of articles (they have no "N" button to hit to reject an
article).  I can't really sympathize with them;  sounds like their network
software was written in Ada or something.  By the way, that's "Holden", with
an "e".
 
From: Kent of Zanth,
 
>Granted that Ada is a marvelous language in its narrowly defined area
>of competence, I think any defense lawyer would have a field day
>poking holes in a language that has been frozen by a military
>bureaucracy; that ignores best current practice (full fledged OOP);
>whose semantics is so ill defined that most programmer users avoid
>most of the language most of the time, and most employers put lots of
>language features off limits; the implementation of one of whose main
>goals (concurrent programming support for embedded multiprocessor
>systems) is held up as a horrid example in language theory classes;
>whose syntax ignored established usage in favor of cuteness or
>uniqueness (read opaqueness); whose behavior is completely
>counter-intuitive, and on and on and on.
 
>Ada just has no business being pointed to as a standard
>of language excellence.  It is too big, too awkward, shows its seams
>too prominently, and is _much_ too hard to teach, to learn, and to
>use.  The "Dear Ada" column in Ada Letters is always an occassion for
>laughter and tears, but never for that warm feeling of satisfaction at
>seeing a job well done.
 
Amen.
 
There has been some dispute here recently concerning the term "high level"
(i.e. that Ada is a "high level" language as opposed to C, which isn't).
 
The truth is that the dichotomy is roughly as follows:  of major languages
at present, C++ is a high level language (OOP).  C is a high-structured,
low-level language, a kind of a thinking-man's assembler, if you will.  Ada
is a high-overhead, low-performance language, a non-thinking-man's dis-
assembler, intended for disassembling projects, careers, reputations,
psychological profiles, aeroplanes (such as the French Airbus) etc. etc.
 
Ted Holden
HTE
 
 

stt@inmet.inmet.com (01/05/90)

With regard to Ted Holden's most recent Ada bashing...

You really seem to have an irrational hate for Ada.

Few people would claim it is a perfect language, but
it has a number of advantages for large projects thanks
to the clean separation between interface and implementation,
the multi-level name space, and the strong type checking
across separate compilations.

I will admit that Ada has developed a "clunky" reputation
due to large, slow, and inefficient first generation compilers.
However, if you try the newer generation of compilers
from Verdix, Meridian, RR Software, Telesoft, Alsys, etc., I think
you will find that much of the "clunkiness" is gone, and the
advantages of the language outweigh the disadvantages for
many applications.  

Of course, Ada still has a ways to go.
However, I personally feel that the Ada 9X process may
fix the relatively few big "clunkers" in Ada while
adding some improvements which could significantly
increase its range of appropriate applicability.

Also, Ada compilers will slowly but surely get better and better.

In the meantime, though, I heartily recommend that if you hate Ada,
you avoid reading and/or contributing to comp.lang.ada.
If you only "dislike" it, constructive suggestions for the Ada 9X
process are always welcome.

Tucker Taft
Intermetrics, Inc.
Cambridge, MA  02138

bagpiper@pnet02.gryphon.com (Michael Hunter) (01/07/90)

ted@grebyn.com (Ted Holden) writes:
>From: Bill Wolf, Clemson
> 
>>   I personally would consider the use of a C++-to-Ada preprocessor for
>>   the development of new code to be entirely out of the spirit of Ada.
> 
>Why are you and your friends even considering such a thing, Bill?
>Having problems with Ada again?  I mean, I'm not sitting here
>considering translating Smalltalk or Eiffel into C++ or any of MY
>languages...
wow ted...didn't know that you developed the Eiffle AND Smalltalk
languages...oh..you mean that those are the ones that you use..ah got it...it
is just that the languages that we speak here in America is so amgibuous and
nowhere as good as the one they speak over in England....
>"...caught from some unhappy master             Poe
>whom unmerciful disaster
>followed fast, and followed faster..."
> 
>"...till this sorry, wretched bastard           Holden
>turned to grace, to C once more;
>flung the Ada monster back
>into the night's plutonian shore,
>crying 'Never... nevermore'"
> 
>or something like that.
wow...that took guts...(not much more though)
>>   Similarly, the undisciplined practices which
>>   are common among the users of C and C++ would not simply vanish during the
>>   translation process.....
> 
>Undisciplined practices?
I actually take offense to that also.  A bad Ada programmer is a bad c
programm (oh, and ted, it is c and C++...not C and C++) is a bad C++ program
is a ....  If a person is undisciplined in c Adas training wheels might make
it more difficult for them to hang themselves...but it will not make them a
better programmer.
> 
>Such as bringing projects in on time and under budget??   Can't have
>that, now, can we?
The language has little to do with bringing projects in on time and under
budget.....the requirements->design->implementation flow, management and
technical staff have more to do with that then the language (IMHO).
>There has been some dispute here recently concerning the term "high level"
>(i.e. that Ada is a "high level" language as opposed to C, which isn't).
> 
>The truth is that the dichotomy is roughly as follows:  of major languages
>at present, C++ is a high level language (OOP).  C is a high-structured,
>low-level language, a kind of a thinking-man's assembler, if you will.  Ada
>is a high-overhead, low-performance language, a non-thinking-man's dis-
>assembler, intended for disassembling projects, careers, reputations,
>psychological profiles, aeroplanes (such as the French Airbus) etc. etc.
> 
>Ted Holden
>HTE
My personal opionin is that c, C++, and Ada are all HOLs.  c feels more like a
low level language due to the fact that pointers are first class types...but
that doesn't make it any more of a portable assembler then having and
extensive macro package makes assembly language into a HOL on any machine.

oh..and if you are going to prove something is bad (ie., Ada) you have to give
a proof...not examples (the French Airbus)...this is basic baby mathematics. 
To disprove you proof, you opponent just needs to give an example where your
hypothesis fails.

                                        Michael Hunter

PS. Why am I responding to a madmans rantings...I don't know....


Mike Hunter - Box's and CPU's from HELL: iapx80[012]86, PR1ME 50 Series, 1750a
UUCP: {ames!elroy, <routing site>}!gryphon!pnet02!bagpiper
INET: bagpiper@pnet02.gryphon.com

cbp@icc.com (Chris Preston) (01/10/90)

In article <24389@gryphon.COM> bagpiper@pnet02.gryphon.com (Michael Hunter) writes:
>ted@grebyn.com (Ted Holden) writes:
>>From: Bill Wolf, Clemson
>> 
>>>   I personally would consider the use of a C++-to-Ada preprocessor for
>>>   the development of new code to be entirely out of the spirit of Ada.
>> 
>>Why are you and your friends even considering such a thing, Bill?
>>Having problems with Ada again?  I mean, I'm not sitting here

>I actually take offense to that also.  A bad Ada programmer is a bad c
>programm (oh, and ted, it is c and C++...not C and C++) is a bad C++ program
                        ^^^^^^^^^^^
     Why does K&R (Second Edition) use "C" throughout the entire book? 

cbp

     PS:  Isn't it "Ted" rather than "ted" ? :-)
-- 
cbp