4 ms·
That's a fair criticism. One of the disadvantages of Fortran is that it caters to a very non-sexy segment of the programming population, by that I mean that UX
by cbcoutinho 9y ago
That's a fair criticism.
One of the disadvantages of Fortran is that it caters to a very non-sexy segment of the programming population, by that I mean that UX/UI is not of great concern - a lot of learning materials I come across reflect that. Unless you find a textbook, you'll probably end up looking through undergraduate/graduate engineering lectures, or some presentation from a national lab (see below).
First question, do you have access to a compiler? On all Linux distros I'm aware of, you can get the gnu fortran compiler fairly easily (some variation of gcc-fortran, gfortran, etc.). On Windows you can either boot up a VM, or use something like the MinGW toolchain (https://sourceforge.net/projects/mingw-w64/ https://sourceforge.net/projects/mingw-w64/), which is a port of gcc compilers to windows. I have no experience with Mac and/or BSD.
Some learning materials I just came across on Google, which don't seem to cater to people with prior Fortran experience:
http://www.hpc.lsu.edu/training/weekly-materials/2014-Spring/Fortran-Spring-2014.pdf http://www.hpc.lsu.edu/training/weekly-materials/2014-Spring...
https://www.tacc.utexas.edu/documents/13601/162125/fortran_class.pdf https://www.tacc.utexas.edu/documents/13601/162125/fortran_c...
http://www.dsf.unica.it/~fiore/f03t.pdf http://www.dsf.unica.it/~fiore/f03t.pdf
Some more advanced topics:
http://people.ds.cam.ac.uk/nmm1/fortran/paper_10.pdf http://people.ds.cam.ac.uk/nmm1/fortran/paper_10.pdf
http://people.ds.cam.ac.uk/nmm1/fortran/paper_11.pdf http://people.ds.cam.ac.uk/nmm1/fortran/paper_11.pdf
http://people.ds.cam.ac.uk/nmm1/fortran/paper_12.pdf http://people.ds.cam.ac.uk/nmm1/fortran/paper_12.pdf
http://people.ds.cam.ac.uk/nmm1/fortran/paper_13.pdf http://people.ds.cam.ac.uk/nmm1/fortran/paper_13.pdf
http://people.ds.cam.ac.uk/nmm1/fortran/paper_14.pdf http://people.ds.cam.ac.uk/nmm1/fortran/paper_14.pdf
http://people.ds.cam.ac.uk/nmm1/fortran/paper_15.pdf http://people.ds.cam.ac.uk/nmm1/fortran/paper_15.pdf
http://people.ds.cam.ac.uk/nmm1/fortran/paper_16.pdf http://people.ds.cam.ac.uk/nmm1/fortran/paper_16.pdf
http://people.ds.cam.ac.uk/nmm1/fortran/paper_17.pdf http://people.ds.cam.ac.uk/nmm1/fortran/paper_17.pdf
- na85 9y agoI clicked on your first link out of curiosity and see that it's for F90/95. My first reaction was to wonder whether it would cover the object-oriented paradigm and IEEE floats added in later standards, but then I realized that this is a manifestation of the problem: lecture slides from 2014 that fail to cover even F03. >First question, do you have access to a compiler? Sure do. In fact I managed to fumble my way through writing a program to parameterize away piston-engined aircraft performance into an iterative solver a few years ago, but the lack of good/comprehensible language reference materials made trying to decipher the arcane incantations needed to do robust file I/O or divide the program into multiple source files, etc. into a very frustrating experience. It was the last time I touched Fortran. I'm surprised nobody has sat down and said "All right, if we want people to use Fortran outside of legacy codebases, we really need to polish the language introduction and put out a modern getting started guide to writing idiomatic Fortran in $current_year." Because if they don't want new people to learn and use Fortran, why are they bothering to update the standard?
- cbcoutinho 9y agoSorry to hear it was such a struggle for you, I didn't mean to be condescending in my previous comment. I guess from your comment Fortran isn't as easy to learn as I thought - I'll remember that in the future. The fact that 'the standard' has a different meaning in Fortran compared to other languages is indeed frustrating (see 2008 standard conforming status of various compilers here [0] as of Apr 2016); however, that being said backwards compatibility is taken very seriously, so learning the basics of 90/95 isn't a waste compared to the later versions of the standard. I'm not sure why there isn't a better focus on a thorough introduction. I learned Fortran as I have learned all languages - with great frustration. Fortran hasn't been any different for me in that regard. BTW, here's a great resource I've found helpful in the past that does a great job of comparing Fortran to Python (e.g great if you have a numpy background). [1] http://www.fortran90.org/index.html http://www.fortran90.org/index.html
- na85 9y agoNo sweat, it wasn't condescending. I think for me, the problem is that my background is not in comp sci or software engineering. I am an aerospace engineer and am mostly self-taught save for what I retained from my first year C++ course back in the early aughts or gleaned from my sibling who is an ex Googler. So I end up not grokking a lot of tutorials targeted at professional programmers, maybe? I've written C, C++, C#, PHP, Python, lisp, Tcl, and Fortran and it was Fortran that presented the biggest hurdle in terms of finding quality info. I sometimes wonder why nobody wrote a "Practical Common Lisp" for Fortran. Some artifact of the different characteristic Fortran user vs the Lisp user maybe?