Live data from Hacker News

Compilers for continuous integration of Fortran projects

fortran-lang.discourse.group

11–18 of 18 posts

Re: Compilers for continuous integration of Fortran projects

#11
post #2

> The concept of CI (Continuous Integration) and GitHub Actions have been not only life-changing but also eye-opening to me. They enable me to test my code with intensity and extensiveness that are unimaginable otherwise. That's such a surprising sentence for me to read in 2024. CI to me is like a compiler: a basic, necessary tool. One of those things I assume everyone else also does. I guess the Fortran people move…

I am the one who develops PRIMA ( http://www.libprima.net ) and made the original post at Fortran Discourse ( https://fortran-lang.discourse.group/t/which-compilers-are-a... ). I learned about CI in 2021, when PRIMA was (fortunately) still in the early stage. I agree that I am behind "the industry" in learning CI. However, note that I am an applied mathematician, who has been trained and working in Math departments.…

>That said, I hope it is understandable why I am "a bit slower than the rest of the industry in this regard".

You are doing a great job. I worked with research institutes from Australasia, and now am working with others from Europe. There are heaps of people from different backgrounds like yours, geography, physics, engineering, etc., that inherit or start coding projects.

And people with different ages too. I've seen people fresh off university learning about tests, and also researchers with a great reputation and lots of papers written that were getting the hang of what were unit tests, CI, a server and a client, and other concepts that are so common to people in IT.

Nothing wrong with that. Keep up the good work, and keep slowly improving the code. I hope you have somebody else to work with you on this task, and do some code review or discuss when you need to work on something new, or perhaps a group at your company/work that has some Research Software Engineers.

Most RSE's I know are familiar at working with people from different backgrounds to slowly improve projects without blocking/stalling research, simulations, and publication. Thank you!

Re: Compilers for continuous integration of Fortran projects

#12
post #11

Earlier quoted context omitted.

I am the one who develops PRIMA ( http://www.libprima.net ) and made the original post at Fortran Discourse ( https://fortran-lang.discourse.group/t/which-compilers-are-a... ). I learned about CI in 2021, when PRIMA was (fortunately) still in the early stage. I agree that I am behind "the industry" in learning CI. However, note that I am an applied mathematician, who has been trained and working in Math departments.…

>That said, I hope it is understandable why I am "a bit slower than the rest of the industry in this regard". You are doing a great job. I worked with research institutes from Australasia, and now am working with others from Europe. There are heaps of people from different backgrounds like yours, geography, physics, engineering, etc., that inherit or start coding projects. And people with different ages too. I've see…

Many thanks for the encouragement and appreciation.

Up to now, my endeavor with PRIMA has not been extremely rewarding in terms of career or life. It is quite the opposite --- I got punished.

However, I will continue with it, because it was a commitment, and its importance to the community is obvious.

Re: Compilers for continuous integration of Fortran projects

#13

Earlier quoted context omitted.

In grad school I worked on three separate Fortran code bases written as early as the 80s with tens of thousands of lines, no source control or version history, no build systems or even build scripts, and no tests. I think a lot of old scientific software is in the same condition, with some mix of "if ain't broke don't fix it" and the code being very hard to refactor. This quote from the linked PRIMA page pretty much…

Did you succeed in porting the code? It would not be easy according to my experience with PRIMA. I would be happy to learn if you have a GitHub repo of it. Thanks.

I could be wrong, but it sounded like Brentward1 was quoting/paraphrasing someone else.

Re: Compilers for continuous integration of Fortran projects

#14
post #13

Earlier quoted context omitted.

Did you succeed in porting the code? It would not be easy according to my experience with PRIMA. I would be happy to learn if you have a GitHub repo of it. Thanks.

I could be wrong, but it sounded like Brentward1 was quoting/paraphrasing someone else.

Yes, Brentward1 was indee quoting me (author of PRIMA) in his second paragraph. However, I was asking about the code he tried to port during his graduate study mentioned in his first one.

Re: Compilers for continuous integration of Fortran projects

#15

The complaints in that thread, about how hard it is to exchange money for Fortran compilers (and then, if you succeed, trying to figure out the overly paranoid license management software) really brings back "fond" memories of academia 20 years ago. In a world with github and crates.io and pypi and npm, it really is weirdly quaint.

Despite all the complaints I made in the original Fortran Discourse post, I must stress that nagfor is surely one of the best Fortran compilers (top 3) in all aspects (bug-free, responsiveness of tech support, support of the standard, clarity of debugging information, documentation ....).

A great compiler, but needs some modernization of its accessibility.

Re: Compilers for continuous integration of Fortran projects

#16

Earlier quoted context omitted.

In grad school I worked on three separate Fortran code bases written as early as the 80s with tens of thousands of lines, no source control or version history, no build systems or even build scripts, and no tests. I think a lot of old scientific software is in the same condition, with some mix of "if ain't broke don't fix it" and the code being very hard to refactor. This quote from the linked PRIMA page pretty much…

Did you succeed in porting the code? It would not be easy according to my experience with PRIMA. I would be happy to learn if you have a GitHub repo of it. Thanks.

Yes, at least the parts that my research group used regularly. I ported them to Rust, though, not modern Fortran. They're also pretty specific to computational chemistry, rather than general packages like PRIMA, but I'll link them here in case you're curious anyway. I was also still learning Rust and followed the original Fortran API and naming scheme where possible, so this code could use a refactor too! But at least there are no gotos.

https://github.com/ntBre/anpass - ordinary least squares fitting https://github.com/ntBre/intder - internal coordinate transformations https://github.com/ntBre/spectro - vibrational perturbation theory

PRIMA looks very interesting, by the way. I may see if I can get some use out of it in my research!

Re: Compilers for continuous integration of Fortran projects

#17

Earlier quoted context omitted.

Did you succeed in porting the code? It would not be easy according to my experience with PRIMA. I would be happy to learn if you have a GitHub repo of it. Thanks.

Yes, at least the parts that my research group used regularly. I ported them to Rust, though, not modern Fortran. They're also pretty specific to computational chemistry, rather than general packages like PRIMA, but I'll link them here in case you're curious anyway. I was also still learning Rust and followed the original Fortran API and naming scheme where possible, so this code could use a refactor too! But at leas…

Great! Thank you for the links.

I will be very glad if PRIMA turns out useful to you. This will compensate my time, effort, and energy spent.

Re: Compilers for continuous integration of Fortran projects

#18
post #2

> The concept of CI (Continuous Integration) and GitHub Actions have been not only life-changing but also eye-opening to me. They enable me to test my code with intensity and extensiveness that are unimaginable otherwise. That's such a surprising sentence for me to read in 2024. CI to me is like a compiler: a basic, necessary tool. One of those things I assume everyone else also does. I guess the Fortran people move…

I am the one who develops PRIMA ( http://www.libprima.net ) and made the original post at Fortran Discourse ( https://fortran-lang.discourse.group/t/which-compilers-are-a... ). I learned about CI in 2021, when PRIMA was (fortunately) still in the early stage. I agree that I am behind "the industry" in learning CI. However, note that I am an applied mathematician, who has been trained and working in Math departments.…

Oh no, please, don't think of my comment as criticism! Just an observation. Sorry if I didn't make myself clear, it really wasn't my intention.
Post reply on HN