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. +-+-+-+