What comes to mind when you think of FORTRAN? When I thought of it originally, it meant punch cards and the two button keyboard. It had gone to the wayside, left along with COBOL (and to some extent BASIC) to be used in legacy systems that were too expensive to replace. To think it’s still in use in absolutely stunning.
But here I was, not only maintaining code that was originally written in F77, but developing in a mix of F90, F95, and free-form. It truly puzzled me when I found out that Intel is still in active development of their FORTRAN compiler.
In the days of writing powerful programs in under a thousand lines, why does a language that limits line length still in existence. At the beginning of the Summer, I thought to myself that surely, the entire set of tools could be rewritten in something more user friendly, like Python or C++. I also had a sneaking suspicion that most of the tools were written in FORTRAN due to existing knowledge from the current staff, reluctant to try anything different. I was laughably wrong.
I will be the first to admit that most of what I am working on in FORTRAN is not speed or computationally intensive. But, FORTRAN runs circles around most other high level programming languages. It weakness of being old is also its greatest strength. There are algorithms for almost everything in FORTRAN. Some of them are a wasteland of bugs, but try to ignore those libraries. FORTRAN is used almost exclusively in supercomputing environments, and its easy to see why. It may take a programmer ten times longer to develop a program in F95 vs. Python, but if the program will take days, weeks, or even months to run, what does the difference in upfront development make?
I was about to say that FORTRAN does not handle GUIs well at all. But, a quick search shows otherwise, at least for GTK. So if anything, I don’t know how to make a GUI in FORTRAN…
I may be very biased here, but I would make the argument that FORTRAN is not dead, even though I definitely thought it was three months ago. It may have a small niche in the supercomputing world, but that niche isn’t going anywhere soon.