Roger Levy
May 5, 2017
9:35 p.m. PDT


Fortran isn't known for being inherently fast. What are the major reasons the code can't be rewritten in another language?
11 Replies

Jordan Thistle
May 7, 2017
7:17 a.m. PDT
@Roger Levy
Fortran is actually faster than C or C++ for mathematical operations. Further, the code base is very large and would require a significant effort to rewrite

May 9, 2017
7:36 a.m. PDT
I posted this to the Apple // enthusiasts Facebook page. In one of the comments someone (Paul Schlyter) pointed out: "Also note that the Fortran-2015, Fortran-2008 or Fortran-2003 of today is quite different from the FORTRAN-77 at the time of Apple Fortran." So What are we dealing with here exactly?

Roger Levy
May 9, 2017
7:40 a.m. PDT
@Gordon Aplin
I think it was mentioned that this is Modern Fortran.

Roger Levy
May 9, 2017
7:41 a.m. PDT
@Jordan Thistle
Thank you for the response, I didn't know that about Fortran. Does that rule out writing the changed parts in another language and calling it using a FFI?

May 9, 2017
8:28 a.m. PDT
@Roger Levy
They did but "modern" seems intentionally vague. I'm sure it will become clear once the code is available to view.

Michael Schreiber
May 9, 2017
11:18 a.m. PDT
@Roger Levy
"Flow analysis solver is written in Fortran, other components are written in C++ and Ruby" - so language shouldn't be a barrier, other than efficient selection....

Garrett George
May 9, 2017
7:23 p.m. PDT
It's written in Fortran 95

Charles Barnard
May 17, 2017
5 p.m. PDT
@Roger Levy
Money & Time. The same thing driving these competitions.
Millions of lines of code, hundreds of thousands of man-hours.
This is why the IRS ran code written for IBM machines which became obsolete in the 1950's right up until the end of the century.

Matt Craw
May 22, 2017
8:21 a.m. PDT
@Roger Levy
A tremendously massive existing number of existing software packages and analysis that rely on FORTRAN, which would also require being rewritten. Think of the Boeings with decades of CFD simulations correlated to wind-tunnel data and flight testing. You can't just use another language without proving that you would get the same answers. <-- This is the biggest part of the problem.

Robert Kramkowski
May 23, 2017
7:05 a.m. PDT
@Matt Craw
Not just Boeing. I used to work for Pratt & Whitney Aircraft simulating jet engines starting with Fortran IV, let alone 66 or 77 on an IBM 360. I last did that back in the late '70's. At this point, I have no idea what "modern" means in this context.

Paul Musille
May 25, 2017
11:20 a.m. PDT
Hi All,

Thanks for the lively conversation and patience in waiting for access to the FUN3D software. If you are interested in the specifics of the code you can check out the software manual at:

Some additional info about F95 as it relates to FUN3D is within that manual here:
Post Your Reply
Let these people know about your message