Live data from Hacker News

Fortran is back on the top 20 TIOBE index list

zdnet.com

21–30 of 44 posts

Re: Fortran is back on the top 20 TIOBE index list

#21

The article didn't say the reason for Fortran's renewed popularity. Anyone know why? Only thing I can think of is either due to AI/ML or robotic-y needs.

> The article didn't say the reason for Fortran's renewed popularity. Anyone know why? As a single data point, I'm more and more drawn towards Fortran lately. I never used it before this year, having done all of my work in various non-Fortran languages, mostly C, C++, Matlab/Octave, lua, python+numpy, and Julia. I'm quite fed-up with limitations with all of these languages, and it seems that Fortran has actually its…

What are some examples of limitations you've run into with various non-Fortran languages?

Re: Fortran is back on the top 20 TIOBE index list

#26

The article didn't say the reason for Fortran's renewed popularity. Anyone know why? Only thing I can think of is either due to AI/ML or robotic-y needs.

There's been some great, recent efforts to bring more "modern amenities" to the Fortran coding experience. For instance the Fortran Package Manager [1] aims to make it easier to bootstrap new applications leaning on established, extant code without spending all your time manually setting up the build targets and library linking details.

I've also seen a confluence with the AI/ML communities. Some interesting applications of these tools to accelerate models used in weather, climate, chemistry, physics, and astrophysics require complex software interactions, usually running simultaneously with some multi-million line Fortran code base. There's been many interesting and clever marriages of classic HPC Fortran applications and novel, embedded AI/ML parameterizations.

[1]: https://fpm.fortran-lang.org/

Re: Fortran is back on the top 20 TIOBE index list

#27

Earlier quoted context omitted.

> The article didn't say the reason for Fortran's renewed popularity. Anyone know why? As a single data point, I'm more and more drawn towards Fortran lately. I never used it before this year, having done all of my work in various non-Fortran languages, mostly C, C++, Matlab/Octave, lua, python+numpy, and Julia. I'm quite fed-up with limitations with all of these languages, and it seems that Fortran has actually its…

What are some examples of limitations you've run into with various non-Fortran languages?

None of them seems "tailored" to the job of numerical computation (mostly linear algebra algorithms) like Fortran seems to be.

C: it is mostly alright, especially since C99 with VLA and complex numbers. Yet the aliasing rules are a bit annoying, and multi-dimensional arrays, while possible, do not really feel natural.

C++: an unholy clusterfuck... I almost ended crazy trying to use it properly. With extreme discipline maybe you can get to do some work with it. But not me.

Octave: very beautiful language with a natural, concise notation for math. Excellent out-of-the-box support for sparse matrices. Shame that loops are so slow; needs a serious effort on a JIT.

lua: my favorite general-purpose language. The luajit interpreter may be one of the fastest and easiest alternatives to Fortran. I wrote a matrix product using an explicit triple loop, and it multiplied huge matrices just slightly slower than an optimized blas. Extremely impressive! I'm very sad that the project is sort of "abandoned".

python+numpy: My least favorite, but the one that I use the most... what can I say: this is a general-purpose language where you can sort of do math in it. But it is not a language tailored for math. The base language has natively strings and dictionaries (for which I have no use) but it doesn't have native multidimensional arrays of floats. I do not understand why the numeric computing community is shifting so much to python, it makes no sense in my eyes. Also, loops are insultingly slow.

Julia: may be the best of the bunch, but launching the interpreter is excruciatingly slow, and it does not suit my usage. In the time that julia uses to compile a three-line program to plot "sin(x)", you can run one hundred times the Fortran compiler on the equivalent program (or simply call gnuplot). All in all, it keeps pretty much the promise of "matlab with fast loops", which is just what I need. But I feel that it's still a bit far from being there.

Re: Fortran is back on the top 20 TIOBE index list

#28
It has been a few years, but less than 10 years ago I worked on a small project where we used the Intel FORTRAN Compiler: https://software.intel.com/content/www/us/en/develop/tools/o...

It's well maintained and highly optimized. Before then, I had not used FORTRAN since 1983 (and it was old even then).

Re: Fortran is back on the top 20 TIOBE index list

#30

The article didn't say the reason for Fortran's renewed popularity. Anyone know why? Only thing I can think of is either due to AI/ML or robotic-y needs.

I can't say for sure the reason, but I can say with confidence the use of Fortran never really went out of style, but many of the uses were confined to classified systems and edge type or disconnected systems. Heavy number crunching is a big deal in applications like satellite imagery processing, signals surveillance, targeting and navigation. Fortran never really stopped being king there, but a lot of the developmen…

May I just express my gratitude for having this community. This answer is well articulated, and answers the question I had, in a form that is close to heart.
Post reply on HN