102 points rbanffy 2 hours ago 48 comments
jmclnx 2 hours ago | parent
hermitcrab 2 hours ago | parent
jleyank 1 hour ago | parent
hermitcrab 59 minutes ago | parent
It is a log time since I did any FORTRAN. Maybe they improved it?
Frone125 2 hours ago | parent
tasty_freeze 2 hours ago | parent
jibalt 2 hours ago | parent
FWIW, I started programming in 1965, in FORTRAN II.
hotelsacher 2 hours ago | parent
jibalt 2 hours ago | parent
It beats LISP by a year and COBOL by two years.
leoc 16 minutes ago | parent
ryan_glass 2 hours ago | parent
hermitcrab 2 hours ago | parent
0bytes 2 hours ago | parent
goatlover 2 hours ago | parent
hermitcrab 2 hours ago | parent
jibalt 2 hours ago | parent
shaohua 2 hours ago | parent
jandrewrogers 2 hours ago | parent
whartung 1 hour ago | parent
When I first started, with BASIC, my variable of choice was T simply because it was easy to type NEXT T in the FOR loops (why not R? I dunno...T just stuck).
tyromaniac 1 hour ago | parent
throw-the-towel 1 hour ago | parent
jibalt 1 hour ago | parent
jleyank 1 hour ago | parent
jibalt 1 hour ago | parent
richardantj 1 hour ago | parent
brcmthrowaway 1 hour ago | parent
RetroTechie 1 hour ago | parent
Many years of FORTRAN. Followed by many years of Fortran.
FabHK 1 hour ago | parent
Having said that, so many foundational libraries were implemented in Fortran (BLAS, LINPACK/EISPACK, LAPACK, MINPACK, FISHPACK, FFTPACK, etc.) - thanks for that.
PaulHoule 57 minutes ago | parent
It is easy to laugh but C programmers have demonstrated that they can't handle variable-sized buffers on the stack, malloc(), free() and all that.
Early versions of FORTRAN [2] didn't even have a stack, like you couldn't write recursive functions, the program would take parameters for array sizes when it boots and the memory layout would all be figured out at the beginning. When I was developing a display controller for persistence of vision controllers for the AVR-8 it drove me nuts how the C compiler kept moving the stack pointer around all the time for no real reason when an assembly program could move data to and from statically allocated structures. [3]
FORTRAN and COBOL came out around the time Syntactic Structures did so of course there was not an established theory for how to parse grammars, no parser generators, etc. No Dragon Book, but the heroic techniques used to develop compilers in that age are legendary if not quite lost.
I wrote some FORTRAN programs in high school on a VAX, in a comparative programming languages class in college, converted a lot of FORTRAN algorithms into statically allocated Java in grad school in 1990 and in my postdoc I wrote a generator that wrote JNI bindings for LAPACK.
[1] ... e.g. the typical struct is < 4096 bytes
[2] before the FORTRAN 90 standard though you could set the /RECURSIVE flag on DEC FORTRAN befor ethen
[3] we were done such a disservice by all those "it's so elegant to compute Fibonacci in a better programming language than BASIC" articles in Creative Computing because recursion is one of those things, like C's memory management, that most programmers can't really handle.
BeetleB 1 hour ago | parent
It was frustrating that, 30 years after Fortran 77, professors were insisting in writing in that dialect. Thank God I escaped that hell.
Edit: Since people don't understand my point - I'm well aware of the existence of newer Fortran standards. But in much of academia, the professors insisted on sticking with Fortran 77.
dranudin 1 hour ago | parent
jleyank 1 hour ago | parent
whartung 1 hour ago | parent
Growing up on early micros, with BASIC, my father had Fortran for the TRS-80.
I took a stab at learning it, but the documentation was reference for calling the compiler, not so much learning the language. And when I found a FORTRAN book, it was quite dated and talking about things like tapes and punches and what not.
So, that effort stalled.
But, my first quarter in college, I took a FORTRAN (77) class. FORTRAN taught on the schools CDC Cyber mainframe.
This was quite a change from 8-bit PET BASIC.
But, most importantly, it was exposure to much of the same concept that an 8-bit computer has, but from a different tact.
This gave me more of a way to view things from a higher level, since I had to make them fit the two different views of how FORTRAN looked at things, how the Cyber presented things, and how BASIC and the PET were "same thing only different".
It also gave me access to a multi-user system, and all of the interesting capabilities it offers.
I remember when they put in their first lab of PCs, and how they started teaching folks Turbo Pascal on micro computers, and I just felt that the users were missing out on a bigger world. "Anyone" can access a PC or micro computer at home, but mainframe or multi user mini access, not so much. It's just a much bigger world out there, and we tend to baby duck what we first see.
Different world today, never had to use FORTRAN professionally, but I am most grateful for the experience of learning it and its environment. Very powerful medium for broader learning.
Also FORTRAN was the only notable computer thing I had "taught" to me (outside of my 20 minute introduction to BASIC by my high school teacher), pretty much everything else I self learned from books and such, even knowing the bulk of it before taking classes in school.
otterdude 1 hour ago | parent
I worked with a proprietary jet engine analysis software suite written in Fortran 77 and It felt very primitive, albeit fast.
Today I feel like C is a much better choice for speed and readability.
If you really need the fastest performance I dont think Fortran gives that much of an advantage writing assembly.
crassglassass 1 hour ago | parent
jleyank 1 hour ago | parent
We found it best to to the front-end and I/O of the code in C and the compute in Fortran. Fastest calculations especially with those tailored libraries.
mohamedkoubaa 23 minutes ago | parent
dranudin 1 hour ago | parent
jmspring 1 hour ago | parent
WalterBright 1 hour ago | parent
buddyholey 1 hour ago | parent
waynecochran 41 minutes ago | parent
insanetake 22 minutes ago | parent
vegesm 16 minutes ago | parent
It was a very bare-bones language, felt more like a high-level assembly macro language. One thing it did well was expressing formulas with the usual "mathematical" notations (+,-,*,/, parentheses to group operations, variables). I guess this was revolutionary at the time. But the control structures were very limited, everything was basically jumps and gotos. The IF was merely a syntactic sugar for conditional jumps. Of course, functions did not exist in the language.
astro1234 12 minutes ago | parent