Recently was working with a 91-year old researcher on their Fortran 77 code written over the last 50-years. It needed debugging and some new coding so it lead to learning an ancient language lovingly called F77. It is an eye-opening experience to realize you are working on something with that much history and contributing to a legacy.
Comment:: Anyone feeling ancient.
Guess I'm not quite that ancient. First exposure to Fortran was in 1975, when I was in high school. We had a 60's vintage IBM 1620 and wrote our programming assignments using Fortran II, which I wouldn't wish on anyone. But at the time it seemed cool and we didn't know any better.
Moved onto college, and the Fortran was a lot better, something called Watfor, which seemed pretty close to Fortran 77. Became a co-op student and took a step backward, since the Fortran G1, G and H compilers we used at the time on the IBM 360 weren't up to Fortran 77, think we called it Fortran 66. No character types, or IF THEN blocks, but it did have logical IF, a big step up from Fortran II
The code I started working on in 1977 as a co-op student (a reservoir system simulation model) is still being used today. Some of the code from the 70's remains the same, including having line numbers in columns 73-80.
I hear from my contact at the national lab, that they are looking for Fortran programmers. I retired a few years ago, but still work a few days a week helping out with modelling and code conversion. If that work dries up, might see about working at the lab, though I'd probably have to upgrade my security clearance.
My son is currently in college, studying computer science. He's intrigued by Fortran. Was going to try for an internship at the national lab, but the virus has thrown a wrench into his plans, as all internships are now on hold.
It's sort of amazing how languages come and go. I've worked with Fortran, Cobol (yuk), IBM mainframe BASIC, Gw basic, PL/I, Pascal, QuickBasic,
Visual Basic 3-6, Visual Basic .NET, C, C++, C#, and all sorts of assembler languages. A lot of these languages had their moment, and now no one uses them anymore.
But Fortran endures.
Fortran 77 ... last 50 years...
More like Fortran IV, or possibly FORTRAN II (my manuals used all caps, some do not).
The FORTRAN II I used, placed complete faith in the programmer to do what is right. The compiler did not do much checking and did what the programmer intended. One of my classmates wanted to obfuscate what the program was doing. He would call a subroutine, passing in an integer literal, and have this subroutine modify the dummy referencing the literal. IOW the literal in the caller would be changed, and the readers (pilferers) of his code would experience problems with his code. ... it is a feature not a bug.
jimdempseyatthecove (Blackbelt) wrote:
He would call a subroutine, passing in an integer literal, and have this subroutine modify the dummy referencing the literal. IOW the literal in the caller would be changed,
In the 90's, I worked on code with that behavior and it was used as a mean to implement "static" variables. Surprising but functional.
jimdempseyatthecove (Blackbelt) wrote:
The compiler did not do much checking and did what the programmer intended. One of my classmates wanted to obfuscate what the program was doing. He would call a subroutine, passing in an integer literal, and have this subroutine modify the dummy referencing the literal. IOW the literal in the caller would be changed, and the readers (pilferers) of his code would experience problems with his code. ... it is a feature not a bug.
The first version or two of the DEC-heritage Intel Fortran allowed this behavior, because the Intel code generator didn't offer a mechanism to block it. The DEC compilers had disallowed this previously. In a later release, the behavior was changed, but you could turn it off with /assume:[no]protect_constants.
When I was preparing my thesis in chemical-physics I had the chance to see some computer programs (in Fortran 66) developed by a professor Pople. Just by seeing how the code was written I had the chance to learn many things. The large use of COMMON statements has not prevented him to receive the Nobel prize for the 'development of computational methods in quantum chemistry' in 1998.
In 1958, he moved to the National Physical Laboratory, near London as head of the new basics physics division.
In the early days of nuclear magnetic resonance he studied the underlying theory, and in 1959 he co-authored the textbook High Resolution Nuclear Magnetic Resonance with W.G. Schneider and H.J. Bernstein.
There is an urban legend that Margaret Thatcher once demanded to know what use was the NPL, the response was 'Well - nuclear magnetic resonance " She was definitely not science friendly
One might think that he did that when it was needed and common - we have neither the need nor the limited computers today.