Live data from Hacker News

The State of Fortran

arxiv.org

41–50 of 113 posts

Re: The State of Fortran

#41

The fact that “The State of Fortran” is a paper on arXiv instead of a blog post actually says a lot about the state of Fortran.

What value does your suggestion have here? I think you might be placing way too much value on a blog post.

Re: The State of Fortran

#42

Earlier quoted context omitted.

For what it is worth - I write Fortran professionally (in some of the use cases you describe) and I doubt its usefulness. The way I see it, Fortran exists today because of inertia, not because it still has technical superiority. These mountains of Fortran code represent decades of investment and undocumented "features" that you could never code around during a rewrite. And so today, new code is bolted on, with a pray…

When we cannot re-make the things we made before is a sign of a slow decline.

More likely, a rewrite doesn't look good on a quarterly spreadsheet and "shockingly" code designed by Johnny Two-Shoes in the 60s that uses COOMON blocks both for internal storage as well as an API is incredibly difficult to test and thus incrementally modify. Bonus points for next to no documentation.

College software engineering textbooks that explain why global memory is generally a terrible design choice were written off the lessons learned from legacy Fortran.

Re: The State of Fortran

#43
post #4

What kind of editor support does Fortran have? I think a language is more than just a language as such, and the surrounding environment is at least as important if not more. I've used things like Mathematica, RStudio and Matlab, as well as Java IDEs, and these make all the difference.

Last I checked, you had to write out your program on paper, using the special Fortran coding forms. Then you just gave the written out forms to someone who would type out your codes at a keypunch and give you a deck of freshly punched cards, or you could take care of it yourself.

So... this is what Hell looks like...

Re: The State of Fortran

#44

Please note there's been some uptick in the intensity of discussion on generics lately [0]. Generics are necessary to bring performant data structures to Fortran, and yet they are nowhere near Go's generics. For the usual naysayers doubting Fortran's place in a modern world: whenever you are reading or watching a weather forecast, that's decades of Fortran staring at you. Whenever you drive past a nuclear power plant…

For what it is worth - I write Fortran professionally (in some of the use cases you describe) and I doubt its usefulness. The way I see it, Fortran exists today because of inertia, not because it still has technical superiority. These mountains of Fortran code represent decades of investment and undocumented "features" that you could never code around during a rewrite. And so today, new code is bolted on, with a pray…

The key advantage of fortran is that it doesn't allow pointer aliasing, which allows the compiler to vectorize more. Couple that with the typical fortran use cases and compiler vendors competing on performance by vectorizing more and more.

What you end up with is a language with a reputation for being faster for computation

Re: The State of Fortran

#45

The fact that “The State of Fortran” is a paper on arXiv instead of a blog post actually says a lot about the state of Fortran.

I read that as "with all the good and bad that implies". That others didn't... well that's Fortran for you. Or maybe just hackernews.

I didn't even consider it in a good light because it was posted on this site, yes. If it was made positively, I apologize to the OP.

Re: The State of Fortran

#47

Earlier quoted context omitted.

Last I checked, you had to write out your program on paper, using the special Fortran coding forms. Then you just gave the written out forms to someone who would type out your codes at a keypunch and give you a deck of freshly punched cards, or you could take care of it yourself.

For anyone who wants to experience the first part of this process, here is a FORTRAN Coding Form (in caps because that's how it was spelled back then): https://upload.wikimedia.org/wikipedia/commons/1/18/FortranC... Print that in color on 8½x14" (legal size) paper and get to work! Of course there were a few other steps in the programming process back then. 1. A Systems Analyst took business requirements and turned th…

thx for this!

Re: The State of Fortran

#48
post #3

Are things like higher order functions and closures relevant features for Fortran programmers? This is an open-ended question. [edit] Just to be clear, I don't think Fortran has these.

It's limited. You can pass functions as arguments to other functions. You can't return a function as a function result.

Re: The State of Fortran

#49

Please note there's been some uptick in the intensity of discussion on generics lately [0]. Generics are necessary to bring performant data structures to Fortran, and yet they are nowhere near Go's generics. For the usual naysayers doubting Fortran's place in a modern world: whenever you are reading or watching a weather forecast, that's decades of Fortran staring at you. Whenever you drive past a nuclear power plant…

For what it’s worth the nuclear power plant I worked at ran mostly on LabView. We compiled the code on PCs onto dedicated LabView boxes. No Fortran was ever used.

Re: The State of Fortran

#50

Please note there's been some uptick in the intensity of discussion on generics lately [0]. Generics are necessary to bring performant data structures to Fortran, and yet they are nowhere near Go's generics. For the usual naysayers doubting Fortran's place in a modern world: whenever you are reading or watching a weather forecast, that's decades of Fortran staring at you. Whenever you drive past a nuclear power plant…

That's not to say the code quality is any good, only that it still runs and everyone has their reasons to avoid a rewrite. True, the fact that it is still running says something, but not overmuch about whether it would be pleasant to maintain, extend or otherwise modify.

But does “code quality” matter if all you need is a black box calculation that spits out the right answer every time, and has done so for the past 50 years?

Put all the damn goto statements in there you want, as long as I don’t have to look at at, great!

Post reply on HN