A Modern Fortran Scientific Programming Ecosystem

A Modern Fortran Scientific Programming Ecosystem

by Degenerate Conic aka @jacobwilliams
October 12, 2022

Historically, large general-purpose libraries have formed the core of the Fortran scientific ecosystem (e.g., SLATEC, or the various PACKS). Unfortunately, as I have mentioned here before, these libraries were written in FORTRAN 77 (or earlier) and remained unmodified for decades. The amazing algorithms continued within them imprisoned in a terrible format that nobody wants to deal with anymore. At the time they were written, they were state of the art. Now they are relics of the past, a reminder of what might have been if they had continued to be maintained and Fortran had continued to remain the primary scientific and technical programming language.

Over the last few years, I’ve managed to build up a pretty good set of modern Fortran libraries for technical computing. Some are original, but a lot of them include modernized code from the libraries written decades ago. The codes still work great (polyroots-fortran contains a modernized version of a routine written 50 years old), but they just needed a little bit of cleanup and polish to be presentable to modern programmers as something other than ancient legacy to be tolerated but not well maintained (which is how Fortran is treated in the SciPy ecosystem).

The post is being discussed at Reddit, comp.lang.fortran, and Hacker News. Thanks to Jacob Williams for his efforts.


I’m afraid to look where it is being discussed on Hacker News. That’s a tough crowd sometimes. :grin:


This may be the most Fortran-supportive HN thread I have seen so far.


A post was merged into an existing topic: Comparing Fortran and Julia’s Bessel function performance

5 posts were merged into an existing topic: Comparing Fortran and Julia’s Bessel function performance

20 posts were split into a new topic: Comparing Fortran and Julia’s Bessel function performance

I think the discussion and comparison of Fortran’s and Julia’s Bessel function routines is extremely interesting and many future readers might benefit, but to make it easier to find I have gone ahead and moved the post to a new thread. Thanks for the post and welcome to our Discourse @heltonmc!


I hope I could restore the thread to its original order in Comparing Fortran and Julia's Bessel function performance, please let me know if something is not looking right there.


I moved all the Bessel functions posts to the other thread, there were about 5 still in here.

When splitting threads, once has to do it carefully and select all the posts, otherwise the remaining posts make no sense.

1 Like