Hello everyone! I’m Dhiganth, a student based in Chennai, India.
I’m currently studying Electronics and Communication Engineering, but I’m really interested in Computer Science.
I have experience with Python and C++, and some basic experience with Ruby.
I’m really excited to apply for projects at GSoC and I’m also really interested to learn how Fortran works! As a starting guide, could anyone please let me know how I could go about learning the basics of Fortran and implementing it in small projects? Please pardon me if this request seems very basic; I just feel that I’d get the best answers in this community! Really excited to see how this turns out
Hi @rachitt , welcome.
Right now we’re not doing any version constraint checking in fpm. The idea for the project is to add that checking. The best version constraint solvers (as far as I know) are built into Haskell’s stack and Cabal tools. They purport to find the “best” set of versions for dependencies matching the specified version constraints. As far as I know of other package managers, they take a very simplistic approach to picking versions and only check that their choice satisfies the given constraints.
I’d say as a first step for fpm it’s perfectly valid to take the simpler approach. Anything is better than the nothing we’re currently doing, but it would be really cool to port the algorithms used for the constraint solvers to fpm. I haven’t had time to do much research into them yet though.
Hi @dhiganthrao , welcome. Shameless plug, I have a course available on Udemy for beginners: Fortran For Beginners | Udemy
But you’ll also find plenty of resources for free on fortran-lang.org. And don’t hesitate to come back here and ask questions.
Thank you for the welcome, and the resources! Definitely, I’ll make sure I get all my questions clarified here, and hopefully I can try to contribute something meaningful overall.
Hello @everythingfunctional ,thank you for the reply.
Understood,I had misphrased my earlier statements.
As per Haskell and Cabal’s constraint checkers,I haven’t looked at them,but I would do that right away.
“As far as I know of other package managers, they take a very simplistic approach to picking versions and only check that their choice satisfies the given constraints.” -
Maybe I can try to execute a small script to check the feasibilty and get hands-on experience for the same before GSoC proposal making?
I’m also clueless about the algorithms being used,but I would research about the same. This is a really interesting project idea to work on,albeit complex.
Please let me know if this is the right way to proceed,I would make a proof of concept on a small scale and then try to solve the bigger parts.
I would also like to start working on small patches,and devise a basic timeline and deliverables so we could streamline our approach towards solving the ideas
Hi @rachitt ,
First step would be to pick something small and easy and submit a PR to satisfy our patch requirement. Check either here or here or here.
Next, put together a basic plan for the project. You don’t need to go into a lot of detail or have already done the research and know exactly how you’ll solve all the problems, but you should have a timeline, and a strategy for how you’ll figure out how to solve the problems. The way you described it above is a good start, just expound a little bit.
Thank you @everythingfunctional !
I’ve opened the discussion on the issue tracker/s for the same. Hoping to send in patches and proposals soon
Hello everyone,
my name is Jakub. I am studying Computing Science at the University of Glasgow.
Last summer I had the opportunity to have an internship at one physics research facility. During this internship, I used Fortran most of the time and have fallen in love with it.
I am interested in the Handling compiler arguments project and have a question.
May I ask for a suggestion of a patch I could create to get an insight into fpm and I could use for my GSoC application?
Thank you for making this project, I did not know about it until today.
Welcome to the Discourse Jakub! We have a number of issues tagged as ‘easy’ which you can see here. Feel free to ask any questions you have, we’re happy to help.