FORTRAN: An old but new language in memoriam of Prof. Dr. Olav Verbeke

logo_smallThe first time I met FORTRAN (and programming) was as a part of a numerical analyis course at the University in 1981. We had to “write” the program with punch cards. It was FORTRAN77 and we did not speak about structured programming at that time. During my PhD-time, I worked with FORTRAN 77 with my adviser Olav Verbeke. In that time, there were already rumours that in further versions, we should have to decalere all variables and we should forget the equivalence statement.  Later on, I learned C at one employer and then again I used FORTRAN77, with a lot of GOTO´s at another one. I moved from UNIX to LINUX, introduced there the GNU FORTRAN compiler and  used him to compile succesfully the old HP-FORTRAN77 programs.

fortran_bannerI made some new programs myselves and I found out that structured programming without GOTO, COMMON, … statements is very wel possible with FORTRAN90 for all our typical numerical programs. Structures of different types of variables can be described while subroutines can be collected in modules. C-functions can be merged in a FORTRAN program. Moreover, object oriented programming and parallel programming is also possible in FORTRAN 2003 and 2008, but I do not use that for the moment. Recently, also a GUI is available in order to make the program userfriendly with buttons and graphs. In case only a graph is needed, including GNUplot in the program is a fast and neat way to go.

imagesSome time ago, I was considering Python but the slowness of this interpreter is sometimes a problem. A direct competitor is C++, which is as fast as FORTRAN with splendid GUI possibilities but is complicated to learn. I decided to continue with my “old” FORTRAN and to wrap the subroutines in Python, if a GUI is needed. In fact, a lot of the Python modules in Numpy and Scipy are wrapped FORTRAN routines.

220px-John_Backus_2A lot of free FORTRAN source is available with the Numerical Recipes for FORTRAN 77 and FORTRAN 90, where the routines are well explained. Today, I program with CODE:BLOCKS IDE under Raspbian LINUX . I thank John Backus and his team for this wonderful job. John was the first one, who realized that developing a higher level language above assembler would speed up programming a lot. But he did not only have the idea, he also realized his idea at IBM. The name of his child was FORTRAN.

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s