Fortran Standard Library: release v0.5.0

Dear Fortran Enthusiasts,

We’re pleased to announce the release of Fortran Standard Library v0.5.0, a significant step forward in our efforts to enhance Fortran development tools.

What’s New in v0.5.0:

  1. BLAS and LAPACK Support: We are delighted to introduce support for linear algebra BLAS and LAPACK interfaces. This addition lays the groundwork for implementing fast, user-friendly linear algebra APIs, empowering developers to tackle complex numerical computations with ease.
  2. Compiler Enhancements: We’ve upgraded the Intel-classic compiler in macOS CI, ensuring better performance and compatibility across different environments.
  3. Continuous Improvement: We’ve made several enhancements and fixes. Notably, state/error handling for linear algebra has been added.

Acknowledgments: A big thank you to @jeremie.vandenplas, @hkvzjal, @certik, @gnikit, @everythingfunctional, @Beliavsky and all the contributors for their dedication and hard work. We’d also like to express our gratitude to the Sovereign Tech Fund for their support in making the linear algebra work possible.

Detailed Changelog:

Get Involved:

We invite you to explore the latest version of the Fortran Standard Library and share your feedback, suggestions, and contributions. Together, we can continue to advance the capabilities of Fortran and empower developers worldwide.

Let’s continue to push the boundaries of Fortran together!

Warm regards, Your Fortran Standard Library Team

36 Likes

The acceleration of stdlib releases (0.3=>0.4=>0.5) since last summer is a great sign! I plan to start exploring it as I am preparing a French video-conference about Fortran-lang activities/tools and Fortran on the 7th June.

3 Likes

I just happened to be looking at FPM stdlib, and other Fortran tools; I see a huge amount of progress compared to when I posted on this last year.

I figured out that:

  1. FPM has a package on Msys2 – This need to be posted towards the top of all tutorial docs on setting up an environment.
  2. It looks as if building the bootstrap compiler from source has been integrated into the initial build script.
  3. Building stdlib with FPM from the git sources is a simple branch switch. This also should be posted towards the top of the docs. Even better, make the FPM build the default branch, and if someone needs to use a different build system, make them switch to that alternate branch. Fortran implemented tools deserve priority whenever possible.

My naive point of view is that I can download and test rather complicated numerical code in a few seconds. This is very impressive.

FWIW – I am working on some tutorials that involve tutoring elementary mathematics along with programming. I am finding this document on technical writing very useful:

2 Likes

We’ve marked this new release with a bump in version because we incorporated the huge modernized BLAS and LAPACK backends. Support for external implementations is already available via cpp flags, although some manual intervention is still needed because fpm does not resolve that automatically.

1 Like

Yes I also find this pretty cool! we will be incorporating high-level algebra functions in stdlib soon, which means that, if everything goes right, we’ll all have a modern Fortran NumPy-like API that supports in a matter of a few clicks:

  • fast and GPU backends (openBLAS, Accelerate, MKL,…)
  • a modern implementation with 128-bit precision support
7 Likes

This is exciting ! Do you any idea of what the timeline for the introduction of this high-level API ?

End of the spring is a good guess imho!