From: mccall@mksol.dseg.ti.com (fred j mccall 575-3539)
Subject: Re: FORTRAN bug(was Re: C++ vs. Ada -- Is Ada loosing?)
Organization: Texas Instruments Inc
Date: Wed, 16 Dec 1992 16:02:11 GMT

In <OBRY.92Dec16094056@cheesesteak.flash.bellcore.com> obry@flash.bellcore.com (Pascal Obry) writes:


>>>Why do you use english ?
>>
>>Because it's what everyone else speaks?  If this is your defense of

>I hope you didn't mean *everyone*, because in this case you would have
>forgotten 3/4 of the world (and maybe more in the univers). Anyhow if you mean
>that you should travel a bit !

Well, I expect that I've travelled at least as much as most (all that
military time, you know), and I'll stand by that statement.  Why are
we speaking English here?  Why do all pilots and ATC centers speak it
(except those in the former Soviet Union -- and they'll probably wind
up changing over)?

>>Ada, it is a poor one.  If you want something that 'everybody can
>>read', you should be using COBOL.  It was designed with the idea in
>>mind that MANAGERS should be able to look at a program and tell what
>>it does without knowing the language. 

>I had to learn COBOL for one of my courses 5 years ago, and by the way it
>does very well what it is suppose to do : file manipulation and form to enter
>data.

[The attributions got screwed up somewhere along in here, since I said
part, but not all, of what is below with >>>.  Let's be careful out
there!] 

>>>I like Ada because you can *read* it. And this seem to be one of the most
>>>important thing about a language. With goods choices for the identifier, you
>>>can read an Ada progam like a text, you don't have to translate what you read

>>>Golly gee whiz, you have to actually KNOW THE LANGUAGE to read it.
>                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>>Horrors!  Oddly enough, I expect anyone reading a program and
>>>expecting to understand it to be able to read the language.  If you
>>>hand somebody a bunch of Ada code, they're going to be able to read
>>>and understand it?  Gee, how is that going to work?  They're going to
>>>know what pragmas do, things like packages and generics, etc.?  I
>>>don't THINK so.

>I don't agree here. let me take a small example :

>In C++ :

>	cout << "un text" << endl;
>	c++;
>	if (i) { ... };                 /* let suppose i is an integer */
>	for (k=0; k<4; k++) {...}

>In Ada :

>	text_io.put_line ("Un text");
>	c := c + 1;
>	if i = 1 then ... end if;
>	for k in 0 .. 3 loop ... end loop;

>I bet that people that don't know either C++ and Ada will understand the Ada
>code. Could we think the same of C++ code ? there is too much conventions
>in C/C++ :

Why would one expect (or want) people who do not know a language to be
looking at and evaluating code?

>	if (i) {..}
>		true if i = 1, you can invent that, you have to learn it

>	for (k=0; k<4; k++) {...}
>		first parameter is to initialize
>		second stop test
>		third whatever you want

>Ok, this is only one instruction. But don't you think that a whole program is
>a set of instructions.

>And we can find a lot of more exemple like this. But I don't want to start a
>language war.

Then why bring it up?  Is it standard practice where you are for
people who don't know a language to be evaluating, writing, or
maintaining code?  'Readability' is a red herring, except insofar as
it applies to people who know the language.  It applies not to 'funny
function names' or 'verboseness', but to the ability to build
constructs that someone who UNDERSTANDS the language has difficulty
deciphering the effect of.  This is certainly probably easier in C/C++
than in Ada, but that's not exactly germane.  It just says that people
who don't understand how to write readable code should probably
preferentially be working in a language that will TRY to force them to
(like Pascal or Ada).  Note, however, that this is certainly no
guarantee, since obscure or opaque code can be written in any
language. 

>Anyhow this is only one part of the readability. The low-level readability or
>instruction readability. I don't mean that an Ada algorithm of many lines will
>be easy to understand at the first look. But at least, I think it will be
>easy to follow line by line what it does.

As will the C++ program, if you 'speak' C++

>An Ada program does what it says.

So does any other program.  Your argument seems to boil down to saying
that Ada is 'better' because it can be understood by someone who
doesn't know Ada.  That is both irrelevant AND untrue.

-- 
"Insisting on perfect safety is for people who don't have the balls to live
 in the real world."   -- Mary Shafer, NASA Ames Dryden
------------------------------------------------------------------------------
Fred.McCall@dseg.ti.com - I don't speak for others and they don't speak for me.