quanto an hour ago

> It utilizes a range of Modern Fortran features, including extensive use of optional variables, function pointer passing, and a randomized test driver, among others. Successfully compiling PRIMA requires a compiler with a robust and mature backend, as well as well-developed intermediate passes and a capable parser.

I am not getting a full picture here. What's challenging about PRIMA code base? Does it use some advanced features that are difficult for a compiler to support? Are the mentioned features in the 2008 standard?

What's actually impressive is that LFortran in alpha stage is only 2x slower than GFortran, which goes back decades.

pjmlp 14 hours ago

Nice milestone.

Modern Fortran is no longer the FORTRAN from punch cards, having this compiler push maybe will help folks to write directly blazing performance Fortran code, instead of numerical code in Python.

  • anta40 13 hours ago

    The lang is still under development, the most current in in Fortran 2023: https://global.oup.com/academic/product/modern-fortran-expla...

    • pjmlp 12 hours ago

      I am fully aware of it, however most recent revisions tend not to be adopted by all compilers, and honestly the large majority only cares about keeping existing code running.

      A bit like C23 and C++23 are here, and the large majority is a mix of C89, C99, C++11, and C++17, as what folks in the trenches care about.

      Or Java 8 versus Java 24, and so on.

      Fortran is in a similar position.

      • rbanffy 11 hours ago

        How many different platforms out there run Fortran code these days? I’m aware of it being very important in scientific computing (and compiling existing code is critical) but I don’t know many other use cases and different platforms requiring different compilers.

        • pjmlp 11 hours ago

          In many HPC cases you are using the platform tools, not gfortran.

          Also we have one use case that is responsible for OpenCL losing mindshare for scientific community, running Fortran on GPU.

          Thus I bet at least Intel, NVidia, AMD, Cray, IBM, being relevant ones.

          Yes, some of them are planning to eventually adopt LFortran to replace their own, like they did with clang, or at least are using LLVM nowadays.

  • yjftsjthsd-h 10 hours ago

    I was given to believe that a lot of numerical code in python is fortran with a little bit of wrapper?

    • pjmlp 10 hours ago

      Depends on the library, it is a mix of C, C++, Fortran, and using Python as JIT DSLs.

actinium226 10 hours ago

Congrats to Ondřej Čertík and the team working on LFortran, this is a big milestone!

andsoitis 14 hours ago

LFortran is an alpha-stage modern, interactive LLVM-based Fortran compiler.

  • froh 3 hours ago

    thanks you've saved me looking it up myself

rewqa 12 hours ago

[flagged]