New Reply

Will FORTRAN always be the premier programming language for science?

 
Share Thread
Dec22-12, 12:33 PM   #18
 
Admin

Will FORTRAN always be the premier programming language for science?


Quote by Dr Transport View Post
Much agreed, I have to push my new hires to learn FORTRAN because of our legacy codes which are written in a mix of FORTRAN/C++. Over the years I have found that C++ is good, but if you want pure computational speed for numerics, FORTRAN is the way to go, you just can't overcome the 50 years of development and tweaking of routines for speed in FORTRAN over the 30+ years of C/C++ which was written primarily for UNIX boxes and data manipulation.

After 15+ years of pure FORTRAN programming, I am now more comfortable in C++ having programmed that more the past decade or so. I can think of only one major project where I used FORTRAN from start to finish lately.
I've traditionally used Fortran as our legacy codes (and those of others) are written in Fortran. Although I've heard about C++, I wasn't really introduced to it until a few years ago. It seems to be the preferred language for massively parallel computation (e.g., multiphysics FEA/CFD on various time and spatial (meshes) scales) - on clusters or supercomputers.
Dec22-12, 01:50 PM   #19
 
Recognitions:
Gold Membership Gold Member
Fortran could really scream on the computers of the '70s. Compared to the computation rates of modern computers and software, early Fortran might appear primitive and ineffective in comparison. Fortran was used to model products and services that we all used.

I am not active in engineering/technology but is difficult to imagine that Fortran will die. Too much good, tight code out there. (BTW, "tight" means sparse and effective, and runs really fast on crappy processors.)
Dec23-12, 07:20 PM   #20
 
Blog Entries: 9
Recognitions:
Gold Membership Gold Member
I'm actually in the beginning phase of porting some FORTRAN simulation code to C++ right now. It's really the only important FORTRAN code we have in the lab I work in. General stuff is in Python or MATLAB, while embedded is C/C++, along with performance-critical stuff. A lot of prototyping is done in MATLAB. (I hate MATLAB, but most people seem to know it.)

All the fluids people I know are married to FORTRAN*. The structures people in my department seem to mostly use C++, as do dynamics & control (my field/specialty). I'm pretty sure FORTRAN is always going to be around.

I personally prefer C. I think C++, useful as it is, is overly complicated and bloated. If I get some time I also want to look at Google Go, which I think is an interesting language for distributed systems.

[*] Is there any way to write it but in ALL CAPS? :)
Dec23-12, 09:16 PM   #21
 
Recognitions:
Homework Helper Homework Help
Those of you who have been able to learn a programming language on your own are brilliant. I am not so. I have been able only to practice some BASIC during the last several years and have written some useful programs. I have not been able to learn ANY programming language on my own, except for one or two forms of BASIC. There are a few types of BASIC which work in and are designed for use in Windows, and one of them is what I have learned to use.

I would like to learn FORTRAN but do not know what to find in order to begin. What program or programs to install, what books to find and study from (ABSOLUTELY NO websites for instruction on FORTRAN -- I need a good book). In the old days, there was a "computer center" with terminals, and we did not need to install anything and we did not go to "websites" or any "internet". The computer screen only showed us a black screen with white text. Today, we can obtain portable computers and run installers to put copies of working software onto it. Things have evolved in so many ways but I would still like to learn and practice FORTRAN. Any for free? Any for free that work in Windows XP and Vista? Require complicated adjustments and configuring?
Dec23-12, 11:19 PM   #22
 
Blog Entries: 9
Recognitions:
Gold Membership Gold Member
I'm neither a FORTRAN programmer nor a Windows user, but there is a Windows version of the GNU FORTRAN compiler gfortran.

Here's a install guide for mingw64 which provides the GNU compiler: http://sourceforge.net/apps/trac/min...ng%20MinGW-w64
Dec24-12, 01:22 PM   #23
 
I find linux distributions very convenient programming/development environments. You have everything you need immediately available after installation. Compilers ranging from fortran 77 and fortran 90 to c++, cobol, lisp, etc. as well as useful tools like 'make' and of course the command line tools like awk,sed,grep, etc.

A nice collection of books are the 'numerical recipes' books, the old ones for c and fortran can be found online at http://www.nr.com
Also, the large collection of small scientific programs of John Burkardt is quite good, in c,c++,fortran77,fortran90 at
http://people.sc.fsu.edu/~jburkardt/
He also has instructions on how to compile and run (in linux).
Dec24-12, 08:16 PM   #24
 
Recognitions:
Gold Membership Gold Member
All engineers and scientists at my U were learning MATLAB.

Note that matlab has OOP, classes, class inheritance, parallel programming capabilities (including GPU) and produces some of the prettiest and most customizable (and open to java programming) graphics available.

You can import java to matlab, drop a slash bang to the shell, and compile stand-alone executables.

On top of that, the high level programming, of course, allows for quick development.

However, I'm currently cosseting switching to python. Not as we'll supported, but everybody tha makes the switch raves about it.
Dec27-12, 04:15 PM   #25
 
I have just learned fortran for weeks by making non-linear lifting line program because my instructor told me to use this language. I have learned visual basic, pascal, and c++ in high school and my freshman year, and matlab of course.

For me, fortran seems more simple to be written (not comparing this to matlab though), but so far I haven't understood its advantages in numerical calculation. Any suggestions how to understand about this? I mean how do I know whether fortran has better performance in numerical calculation than any other languages?

Anyway, to answer the question, I simply think fortran will still be used for at least 20-30 years later. Most of my instructors in fluid department prefer to use fortran. Matlab is just used for short coding.
New Reply

Similar discussions for: Will FORTRAN always be the premier programming language for science?
Thread Forum Replies
Programming language for computational science in future Programming & Comp Sci 5
Which programming language should I use? Programming & Comp Sci 26
Recommended programming language (and texts) for middle-school beginner programming Programming & Comp Sci 9
Which programming language do you use? Academic Guidance 20
c programming language Programming & Comp Sci 1