Path: utzoo!attcan!uunet!seismo!sundc!pitstop!sun!decwrl!ucbvax!agate!eos!amelia!lemming.nas.nasa.gov!fouts
From: fouts@lemming.nas.nasa.gov.nas.nasa.gov (Marty Fouts)
Newsgroups: comp.lang.fortran
Subject: Re: My widget is more portable than yours (was Fortan versus C)
Message-ID: <1052@amelia.nas.nasa.gov>
Date: 23 Sep 88 22:23:29 GMT
References: <1040@amelia.nas.nasa.gov> <4089@lanl.gov>
Sender: news@amelia.nas.nasa.gov
Reply-To: fouts@lemming.nas.nasa.gov.nas.nasa.gov (Marty Fouts)
Organization: NASA Ames Research Center
Lines: 58

>
>Yes, it's argument by anecdote.  That is, it's exactly the sort of
>argument that's always used by C enthusiasts against Fortran.  If
>it's invalid for me to use such arguments, then it's also invalid
>for C supporters.
>

You are correct.  You can, by going through archives, find me writing
notes to C programmers telling them cut it out. . .

>> It seems they were doing something like
>>       COMMON /BLOCK1/ A(10000), I(1000)
>>       COMMON /BLOCK2/ B(10000)
>>       DO 10 I = 1, 30000
>>         A(I) = 0.0
>>    10 CONTINUE
>> They were very upset when CDC wouldn't "fix" the problem.)
>
>This argument is invalid because the above is non-standard (not only
>that, the use of I in the do loop is illegal since I is declared to 
>be an array).  Any non-standard Fortran shouldn't be expected to port
>without _some_ degree of rewriting.  The point about C is that THERE
>IS NO STANDARD.  So, any example of non-portable C code I show you
>will demonstrate _my_ point in a perfectly valid manner.  When a
>C standard becomes available, _then_ you can point to some mistake
>in my C examples - not until.  

*PAY ATTENTION*  THIS IS A FLAME

In another note, Giles is bemoaning that people are jumping down his
throat.  Open wide and I'll explain why.

What you have done with the above is taken a quote out of context and
changed its meaning.  I wasn't discussing *standard conforming*
code,  I was discussing *portable* code.  Radically different
issues.  (See my subject line.) You claimed by anecedote that C was not
portable because of you had some examples of C code which hadn't been
well written for portability.  I gave the above as an example of a
Fortran code which wasn't written for portability and was difficult to
port.  I also went on to say that I don't take this example as proof
that Fortran is a hard language to write portable code in.  This
thought seems to have disapeared from your counter.

[By the way, the code (other than the I which should have been a
J) is standard conforming code.  The Fortran standard allows me to
make all the out of bounds references I want.  It just doesn't require
all compilers to do the same thing.]

If you want to alter the point under discussion, fine, but don't do it
by taking something I said out of context.  Then I won't jump on you.

*END FLAME*

+-+-+-+     I don't know who I am, why should you?     +-+-+-+
   |        fouts@lemming.nas.nasa.gov                    |
   |        ...!ames!orville!fouts                        |
   |        Never attribute to malice what can be         |
+-+-+-+     explained by incompetence.                 +-+-+-+