10.15.06

Fortran’s 50th Birthday

Posted in Computer Languages at 10:37 am by Brooks

IBM’s very first Fortran manual, Programmer’s Reference Manual: Fortran Automatic Coding System for the IBM 704, was dated October 15, 1956 — 50 years ago today. There are a couple of different scanned copies of it available online; bitsavers.org has one, and fortran.com has an autographed one.

There’s an old joke that, in a hundred years, programmers will be using a language that’s completely unrecognizable to modern users — and it will be called “Fortran”. There’s a lot of truth to that; in the first 50 years since this manual, Fortran has changed a lot. Among the signficant changes: subroutines, functions, explicit variable typing, character strings, block IF and DO loops, whole-array expressions, array segments, pointers, dynamic arrays, user-defined data types, pure functions, polymorphic data types, function pointers, generic functions, object-oriented capabilites, and (in the upcoming 2008 standard) arrays shared across multiple threads. Oh, and for those of you who remember the old version: lower-case letters and removal of the “statements must be in columns 7-72 of the line” restriction!

2 Comments »

  1. gs said,

    October 16, 2006 at 12:31 pm

    “There’s an old joke that, in a hundred years, programmers will be using a language that’s completely unrecognizable to modern users — and it will be called “Fortran”.”

    The computer-science-major programmers I deal with deride Fortran on the rare occasions when they mention it at all. I’ve heard it said that the language survives only because of all the big legacy codes that are written in it: I once worked with a ‘Fortran archeologist’ whose job security lay in his ability to get old, ill-documented, long-unused codes to run. Does Fortran remain competitive on its merits?

  2. Brooks said,

    October 16, 2006 at 1:26 pm

    Fortran, unfortunately, has a bit of a legacy image problem. In my experience, most computer-science-major programmers are completely unfamiliar with any versions of the language later than the 1977 standard, if even that recent; a lot of legacy codes use idioms that were obsolete even then. That version of the langauge certainly only survives today because of the big legacy codes.

    On the other hand, the modern version of the language is about as close to that as C# is to C, and in my opinion it’s quite competitive on its merits, at least in the realm of number-crunching.

Leave a Comment