[Beowulf] g77 limits...

Jim Lux James.P.Lux at jpl.nasa.gov
Thu Feb 23 11:49:20 PST 2006


At 10:54 AM 2/23/2006, Robert G. Brown wrote:
>On Wed, 22 Feb 2006, Joe Landman wrote:
>
>>>   b) Alas, I'm probably going to have to become one (again).
>>
>>Heh... people complained that I wrote my Perl, C, and even Assembler in 
>>Fortran for a while.  Now they complain that I write it all in C.  Its 
>>not so hard to switch back and forth.  The hard part is the IO.  Format 
>>statements are annoying.
>
>Yeah, I/O sucks.  String manipulation in general used to suck.  Column
>indentation and continuation rules suck (if they're still there).

Surely you saved some of your old drum cards?  Makes the whole indentation 
thing easier.

>   Not
>having structs and pointers sucks (I just LOVE to play pointer magic
>games and roll my own data objects).

All art and creativity is enhanced by limititations of the medium. I, for 
one, find that the fact that FORTRAN has a native complex type (since IV 
days, and maybe even FORTRAN II had it) and exponentiation as a native 
operator has been more useful than structs and pointers (all that dynamic 
allocations stuff just gets you into trouble) which only get you into 
trouble anyway).  And FORTRAN does have the EQUIVALENCE statement, which, 
especially with named common, can be used to create a form of struct.

Sure, FORTRAN's not a string processing language (it's FORmula TRANslation, 
after all). It's meant to do REAL science and engineering work, like finite 
element models for weather prediction and nuclear weapons design, or 
orbital mechanics calculations for ICBMs and Apollo. If you want to move 
data from one column to another you can use RPG or COBOL or plugboards on 
your Electric Accounting Machinery.  You want to do that namby pamby 
character and string stuff that english and linguistics types are 
interested in, or work in abstract worlds, use SNOBOL or LISP.

>   All of which may well be doable
>nowadays -- did I mention that it was fortran >>IV<< that I learned?
>Running on an IBM mainframe running MVS, JCL, HASP and all that?

yes, modern FORTRANs allows user defined types, etc. (although g77 might 
not. An old manual I have says that STRUCTURE, UNION, RECORD, and MAP are 
all not yet implemented)  Note, all upper case, because real programmers 
use punched cards, and neither the 026 or 029 keypunches have lower case.

>Hopefully "modern" fortran is a whole lot closer to C and supports some
>sort of struct/union or equivalent thereof, and some sort of dynamical
>memory allocation.

F77 had dynamic array allocation (you can do DIMENSION X(*))


>>>   c) Working on some problems with potentially very large memory
>>>allocations.
>>
>>Shouldn't be too hard using g95/gfortran.  Can you look at out of core 
>>type solutions (blocked access).
>
>Don't know.  FIRST the funding, THEN the work.  No Way In Hell am I
>going to learn fortran (again, any flavor) unless I have to, that is to
>say "Will program for food"...;-)
>
>Though I agree, sure, and said as much to greg.  I'm HOPING that this is
>possible, although just finding a common denominator a la F IV, F77,
>F95, gfortran -- standards are your friend, sure, and F95 compilers can
>PROBABLY still compile my old FIV sources, but stil...

James Lux, P.E.
Spacecraft Radio Frequency Subsystems Group
Flight Communications Systems Section
Jet Propulsion Laboratory, Mail Stop 161-213
4800 Oak Grove Drive
Pasadena CA 91109
tel: (818)354-2075
fax: (818)393-6875





More information about the Beowulf mailing list