First official release of LLVM Flang
18 comments
·March 12, 2025deng
accurrent
IF we can get modern fortran working on top of GPUs via spir-v that would be really awesome. Modern Fortran is so nice for numerics.
jmclnx
Congratulations, next is COBOL ? I am serious, we really need a free COBOL compiler.
Yes, GNU now has a front end for COBOL, so LLVM turn. Maybe IBM and the Navy Department will help.
wiz21c
How compatible is it with the current code bases developped under proprietary compilers ?
melodyogonna
It says in the article that some of these companies contribute their test suite
aragilar
There doesn't appear to be a link to the release notes, it would be nice to know what are the current limitations.
pandemic_region
> Whilst many alternative programming languages have come and gone, it [Fortran] has regained its popularity for writing high performance codes.
I don't understand why sometimes people pluralize "code". It sounds a bit silly but maybe it's just me.
enriquto
it's a fairly common usage in numeric computing. If you read, for example, the wikipedia entries for "computational fluid dynamics" you'll see that they consistently speak of "codes" when referring to programs.
thenoblesunfish
It's because the types of things people write in Fortran (high performance science codes, for example) tend to be monolithic, single-purpose programs. It comes from a time when a code really was basically one compilation unit (and doing that is such a nice simplification that I support it, for science). With code written for the web, shared through package managers, etc. it makes more sense to use the uncountable noun instead of the countable one.
gpvos
I've never seen the word used in the plural (for computer programming code) until today, having been in computer science for 35 years. The uncountable form definitely dates from way before the web.
bradrn
As someone doing research in physics, I’ve noticed this usage before. It seems fairly frequent outside CS [EDIT: and as the sibling comment says, specifically in numerical computing]. From what I’ve gathered, for them ‘code’ has become a count noun, such that ‘a code’ means something like ‘a piece of code’ or even ‘a program’, and the plural ‘codes’ follows from that.
gpvos
I'm seeing it here for the first time, and from multiple people. Maybe it's specific to the Fortran community?
adrian_b
Yes, in some traditional Fortran environments "codes" has been used where in other environments one would have said "libraries" or "programs", e.g. "these are some codes for solving systems of ordinary differential equations" or "this is a code for solving boundary elements problems".
So in this sense, as a synonym for a library or a program that accomplishes some function, "code" is countable.
seanhunter
It’s not, but it’s somewhat common among people making numerical models of dynamic systems and that sort of thing. People like Steve Brunton will often say all the “codes” are available to go along with his videos for example https://youtube.com/@eigensteve?si=IVLparAOZ9XDauTz
HexDecOctBin
Now someone go convince the C committee to stop trying to turn C into Fortran.
froh
Q from out of the loop: what are you referring to? and if you could enlighten me how that then is a problem?
jabl
Not the OP, but I'll take a stab at it.
In C99, C added the 'restrict' qualifier for pointers, which would make function arguments marked with it behave a bit like procedure arguments in Fortran. Idea being to allow the compiler to optimize more aggressively.
Not specifically about making C more like Fortran, but there's been a lot of work over the years clarifying what compilers can and cannot assume. More recently, a lot of work going into things like 'pointer provenance', again in an effort to clarify where more aggressive optimizations can be done. And things like when can NULL checks be elided etc.
Some people resent all this and just want C to be more like a 'portable macro-assembler'.
null
Congratulations to the team, this has been a long time coming. I still think that modern Fortran is actually a great language to write numerical code, especially when doing lots of linear algebra. Granted, it was many years ago, but I still remember struggling with C++ and libraries like Eigen, and one day, confronted yet again with agonizing slow compile times and error messages that look like binary, I ditched C++ for good and moved to Fortran95. Not only could I pretty much copy&paste a lot of stuff from my Matlab prototype, the resulting binary was actually faster than C++ with Eigen.
Not sure if I would use it today for new projects, probably Julia would be the better choice nowadays.