Forgot your password?
typodupeerror
Software

John W. Backus Dies at 82; Developed FORTRAN 271

Posted by kdawson
from the go-to-considered-seminal dept.
A number of readers let us know of the passing of John W. Backus, who assembled a team to develop FORTRAN at IBM in the 1950s. It was the first widely used high-level language. Backus later worked on a "function-level" programming language, FP, which was described in his Turing Award lecture "Can Programming be Liberated from the von Neumann Style?" and is viewed as Backus's apology for creating FORTRAN. He received the 1977 ACM Turing Award "for profound, influential, and lasting contributions to the design of practical high-level programming systems, notably through his work on FORTRAN, and for seminal publication of formal procedures for the specification of programming languages."
This discussion has been archived. No new comments can be posted.

John W. Backus Dies at 82; Developed FORTRAN

Comments Filter:
  • Wow. (Score:2, Funny)

    by Mikachu (972457)
    FTA:

    His daughter Karen Backus announced the death, saying the family did not know the cause, other than age.

    Psh, he developed FORTRAN. I'm surprised he even lived to 82 without being killed by a rabid programmer. ;)
    • Re: (Score:2, Interesting)

      by MichaelSmith (789609)

      I'm surprised he even lived to 82 without being killed by a rabid programmer. ;)

      I am inclined to blame him for Basic as well, because it started out as a kind of simplified Fortran.

      • Re:Wow. (Score:5, Insightful)

        by Anonymous Coward on Tuesday March 20, 2007 @05:25AM (#18411815)
        I am inclined to blame him for Basic as well, because it started out as a kind of simplified Fortran.

        I'm more inclined to thank him for all the other high level programming languages.
      • Re:Wow. (Score:5, Interesting)

        by mysticgoat (582871) on Tuesday March 20, 2007 @10:20AM (#18413777) Homepage Journal

        I am inclined to blame him for Basic as well, because it started out as a kind of simplified Fortran.

        FORTRAN was the first working high level compiler language; BASIC was the first working interpreter language. Very different underlying structures.

        Now COBOL was the second major high level compiler language, and it was very much a reaction to FORTRAN, so I suppose using parent post's logic, we can blame Backus for COBOL. But then that cheapens the contributions of the Girl Admiral (Grace Hopper) who gave us such wonders as the nanosecond wire, and MULTIPLY 2 BY 2 GIVING FOUR.

        For the youngsters out there:

        1. FORTRAN (FORmula TRANslator) was the break-through from machine language and assembly to a higher level language with a compiler. Everything we do now is based on this; I believe that many mission critical engineering libraries are still in Fortran (they were a few years ago)
        2. COBOL (COmmon Business Oriented Language, Compiles Only By Odd Luck) was the second successful high level language. Its major improvement over Fortran was getting rid of triphasic logic (branch on <0, or =0, or >0) in favor of boolean logic (branch on !0 or 0). Its most noteworthy failing was the requirement to use the period punctuation mark (full stop) to end sections. This was particularly a problem for girl programmers, since at the time getting into trouble because you missed a period had serious consequences. Cobol simply put too much emphasis on a nearly invisible and easily missed period.
        3. BASIC (Beginners All-purpose Symbolic Instruction Code) made two big advances: first, it attempted to span both engineering and business computing (doing each with the same degree of imprecision); second and more important, it introduced the concept of using an interpreter rather than a compiler. Good stuff, that. Yet another baby step toward tomorrow's virtual machines. Most noteworthy program ever written in Basic: Eliza. Most significant long term contribution: the reaction to its spaghetti coding style, from which Pascal and modern procedure based programming arose.

        </drivel>

        It is hard for some of us graybeards to poke fun at Backus. His vision was the inspiration that has taken us all down this road.

        • by peter303 (12292) on Tuesday March 20, 2007 @01:26PM (#18417311)
          LISP is about to enter its sixth decade too, is still used by advocates, and had its heyday in computer culture. I believe its inventor John McCarthy is still around. MIT used to use LISP as its required CS training language from the 1960s until 2006.

          I call "centennial languages" languages that were invented near the beginning of the computer age as, still used a fair amount, and probably will be around until their 100th birthdays. Some languages like ALGOL, OL/I, and even PASCAL have faded.
    • FORTRAN isn't that bad of a language (and I am not one of those programmers who is over 50, or 30) But I program in it twice a week. It isn't as sleek as python. or as Powerful as C. But it seems to work. And it is just like every other language out there. Has all the main bits and pieces. The only thing I truely hat about it is not the Language but the stupid VAX/HP Compiler and Linkers. Which make every simple change a major task.
    • Re: (Score:2, Insightful)

      by lbmouse (473316)
      "Psh, he developed FORTRAN. I'm surprised he even lived to 82 without being killed by a rabid programmer. ;)"

      He lived to 82, I doubt there are any modern-day potato-ass programmers that could catch him even in his golden years. We should feel fortunate for his contributions and hope to hell we live that good of a life, that long. Now, where did I leave my Cheetos?
    • by ribuck (943217)
      Many years ago I saw an early book describing the advances that FORTRAN would bring, compared to assembler or autocode (which was like a kind of higher-level assembler). Recall that FORTRAN is a contraction of "Formula Translation". The promise made in the late 50's was that, with FORTRAN, you no longer needed to program your formulae. Instead, you simply had to write out your formulae and they would be evaluated, meaning no more opportunity for programming bugs to sneak in. If only!
    • FTA:

      His daughter Karen Backus announced the death, saying the family did not know the cause, other than age.


      Psh, he developed FORTRAN. I'm surprised he even lived to 82 without being killed by a rabid programmer. ;)
      Read the headline again:

      John W. Backus Dies at 82; Developed FORTRAN

      IE. he developed it after he passed away. Surely that explains it...
  • Also known for... (Score:5, Informative)

    by Anonymous Coward on Tuesday March 20, 2007 @04:55AM (#18411689)
    ... Backus-Naur Form (BNF) grammars, the sine qua non of compiler design for the most-popular languages out there.

    Truly an American icon. Even if you never ran LEXX or YACC in your life, Backus's impact on contemporary culture cannot be denied.
    • by MichaelSmith (789609) on Tuesday March 20, 2007 @05:22AM (#18411799) Homepage Journal

      Truly an American icon. Even if you never ran LEXX or YACC in your life, Backus's impact on contemporary culture cannot be denied.

      Many times I have edited lex and yacc code, but never have I understood what the hell I was doing.

      • by rucs_hack (784150)
        Well I've taught Lex and Yacc, and it confuses me...

        How they managed to come up with that stuff still amazes me.
      • Re: (Score:3, Interesting)

        by tcopeland (32225)
        > Many times I have edited lex and yacc code, but
        > never have I understood what the hell I was doing.

        So true. I'm writing a JavaCC book [generating...javacc.com] and I'm still learning new stuff about it even though I'm almost done with the book.

        The thing that's worked best for me is writing the lexical spec first, then going back and writing the parser spec. At least then you know that the basic tokens of the language are being recognized before you try to shape them into a parse tree.
      • by hey! (33014) on Tuesday March 20, 2007 @08:37AM (#18412661) Homepage Journal

        Many times I have edited lex and yacc code, but never have I understood what the hell I was doing.


        Well fear not. I think far fewer programmers today are familiar with BNF than back in the day when anyone who was not utterly worthless had a dog eared copy of The Unix Programming Environment. This means the end of all those tersely documented syntaxes, and with them those cryptic yacc scripts.

        Modern system designers have taken a clean sheet approach to the problem of grammar, one which escapes the limits of technology in Backus' generation, when computing power was scarce relative to brain power. Today you are much more likely to be called upon to work with XML schemas, which follows a simple easily understood philosophy: if something is worth saying, then it is worth saying with a lot words.

    • Re:Also known for... (Score:5, Informative)

      by belmolis (702863) <billposerNO@SPAMalum.mit.edu> on Tuesday March 20, 2007 @05:47AM (#18411879) Homepage

      BNF is a useful notation, but it is just a notation for context-free grammars, which had already been developed and whose properties were already understood. Chomsky described the Chomsky hierarchy of formal languages, including context-free languages (type 2), in 1956, three years before Backus introduced a primitive version of BNF in describing what became Algol 58. The basic ideas came from mathematical logic and linguistics. Backus' role was to introduce these ideas to the specification of computer languages, ironically in part in reaction to the problem of specifying Fortran, which is not context-free.

      • by puppetluva (46903) on Tuesday March 20, 2007 @09:49AM (#18413397)
        In case you were wondering, the Chomsky of the "hierarchy of formal languages" is the same Noam Chomsky that you probably know of in a political context.

        Check out the Wikipedia page on him. . . agree with his politics or not, he's had an interesting career in linguistics. . .
        • Re: (Score:3, Interesting)

          by ajs (35943)
          Linguists, in general, seem to have an interesting way of looking at the world. Chomsky has a way of looking at a political situation in a unique way and formulating an opinion that's not widely held (in fact, one that typically annoys all extremes of the political spectrum). Right or wrong, it's an interesting process.

          Larry Wall has a similar outlook (though his politics likely diverge heavily from Chomsky, I dunno). He has that linguist's way of looking at theoretically opposing points of view and rationa
    • Re: (Score:2, Funny)

      by Anonymous Coward
      Push another one onto the stack of computing gods. Someday during the final battle between men and AI we will have to pop that stack. Lets hope it is a long way off. And lets hope that Dijkstra isn't too angry at being close to Backus in the great stack in the sky. The irony of being in a stack with Backus would kill him with its irony if he weren't already dead.
      • by Skater (41976)

        How does that song go?

        If you believe in forever, then life is just a one night stand.
        If there's a programmer heaven, well you know they've got a hell of a compiler!

        No, wait, that's not it...

    • Backus-Naur Form (Score:3, Interesting)

      by mwvdlee (775178)
      The funny thing about Backus-Naur Form is that Naur himself says it should be Backus Normal Form, like it was before Naur used a slightly modified version of it.
  • by WWWWolf (2428) <wwwwolf@iki.fi> on Tuesday March 20, 2007 @04:58AM (#18411709) Homepage

    John W. Backus Dies at 82; Developed FORTRAN

    This has to be the worst Slashdot headline ever. Makes FORTRAN sound like a type of cancer or something. (I thought that stuff was more of COBOL's league.)

  • by mushadv (909107) on Tuesday March 20, 2007 @05:14AM (#18411765)
    What does that entail? Did he hemorrhage "WRITE (6,7) 7 FORMAT(12H GOD DAMN IT)" and flatline? What about his death rattle? "STOP END"?
  • by quakeaddict (94195) on Tuesday March 20, 2007 @05:27AM (#18411819)
    If it were not for the work of that generation, and the creativity they displayed, our world would be a far different place.

    Poke fun at Fortran all you want, but dammit I use code today to drive a statistical website that was written in the 60's, and it still runs great.

    http://nces.ed.gov/nationsreportcard/nde [ed.gov]
    • Re: (Score:2, Insightful)

      by sosume (680416)
      ..to drive a statistical website that was written in the 60's

      talking about anachronisms ...
    • by Slashamatic (553801) on Tuesday March 20, 2007 @06:56AM (#18412159)
      To heck with just statistics. Fortran is alive and well at the heart of some major airline reservations, checkin and cargo systems. yes, they tried to move to newer technologies but they couldn't handel the load, particularly at points when there is a lot of rescheduling such as during bad weather.
      • by Don_dumb (927108) on Tuesday March 20, 2007 @08:50AM (#18412783)
        Speaking of bad weather, I think these guys - http://www.metoffice.gov.uk/ [metoffice.gov.uk] who are the authority on weather prediction in the UK. Use Fortran for weather forecasting and climate prediction http://www.metoffice.gov.uk/research/nwp/numerical /fortran90/index.html [metoffice.gov.uk] and they don't seem to be tiring of it.

        Personally I don't see why this man seems to be getting such a bad send off here. After all the man invented a programming language that at a time when their were few others around, a language that has survived in critical usage until today. There may be many geeks on this site, but I doubt many of those who seem to be dancing on his grave could have done something so difficult, anywhere near as well as he did.

        Just because an old language is more difficult to use than some more modern ones, does not mean that old language is a bad thing to have existed. And it doesn't mean that it wasn't a great achievement.
        • I'm not sure whether Fortran predated COBOL or vice versa. However, it was out there as one of the first two languages. If you wrote to a subset, it was even quite portable, more so than COBOL which tended to have some very specific file handling. A number of the high-end vectorising compilers were first written for Fortan so that with everything else meant that there were a lot of numerical libraries out there (and still are).

      • Re: (Score:3, Interesting)

        by TapeCutter (624760)
        How long a legacy system lasts is decided by accountants.

        The thing with a huge legacy system such as the airlines use is it's stability, they go by the rule "if it works don't touch it". I worked on a large dispatch system for a telco, the back end was HPUX/C that had been ported from FORTRAN and been in (limited) production at some other telco for a few years (they bought a snapshot of the source code), the central route planning and dispatch algorithim was similar to that used by the airline systems.
    • by smchris (464899)
      written in the 60's, and it still runs great.

      If not great, at least "faster"?

      My first programming class was GOTRAN and FORTRAN on punched cards. The college's IBM 1620 had the extra 64K memory unit in the second room too!

  • by Nerdfest (867930) on Tuesday March 20, 2007 @05:27AM (#18411821)
    GOTO END or , for those that believe in reincarnation: GOSUB END
  • by _Hellfire_ (170113) on Tuesday March 20, 2007 @05:28AM (#18411823) Homepage
    I understand the context in which the word "apology" is being used (as in "justification"), but I had to laugh at the semantics of "apologising for FORTRAN".

    82 is a good innings. No matter what you think of FORTRAN as a language, I think it's safe to say that it, and later some of the other really early languages advanced computer science greatly during its infancy. We have a lot to thank Backus for.
    • I agree that an "apology" is too strong - FORTRAN was pretty damned good for the first high-level language. If you look at some of the alternatives that evolved shortly after FORTRAN, such as BCPL, they were much more limited. It's got to be remembered that it was the first language that established the notion of making programs portable, even if the first couple of versions were fairly closely tied to specific IBM machines.

      • FORTRAN was pretty damned good for the first high-level language. If you look at some of the alternatives that evolved shortly after FORTRAN, such as BCPL, they were much more limited.

        Well, Lisp came out the next year, and has about the most versatile architecture of any language invented since.

        The history of Fortran reads like the history of Ada, Basic and Perl. Continually being retrofitted with good ideas from other languages, but not very well and late in the game.

        • by tedgyz (515156) *

          Well, Lisp came out the next year, and has about the most versatile architecture of any language invented since.
          Versatile, yes. Useful? I dunno. Besides emacs, are there any examples of LISP in a useful product? Of course, there are some who would argue the usefulness of emacs. :-)
          • by Bluesman (104513)
            Ever use GCC?

            Then you've used the architecture of LISP.

            LISP is important not only because it's a great programming language, but because it's a concise method of expressing abstract syntax trees, which are at the heart of any decent compiler.

            Take a look at Register Transfer Language, which gcc used to use as the intermediate target language. You'll notice a lot of parentheses...

            I think the reason people disparage any programming language is that they don't understand it completely, because nearly every one
            • by tedgyz (515156) *
              Ok. Well then maybe LISP makes a good Intermediate Language. I never embraced it as a general purpose language for solving a wide spectrum of problems. Perhaps FORTRAN and BASIC poisoned my mind, making it difficult to learn LISP.

              Personally, I've always found runtime support to be more important than language syntax. I recall using FORTRAN on VAX/VMS. I was able to call ANY VMS language runtime. For example, I used to call some of the VMS BASIC functions for formatting text.
    • ``apology'' (Score:2, Informative)

      by majiCk (264238)

      I understand the context in which the word "apology" is being used (as in "justification"), ...

      Actually, I'm pretty sure they do mean ``apology'' as in ``sorry, world''. Backus's work on FP was all about getting past the ``word-at-a-time'' assignment-based paradigm popularized by FORTRAN (the ``von Neumann bottleneck''), and moving on to more expressive algebraic programming techniques, today referred to as functional programming. Check out his Turing award lecture [stanford.edu] -- it's a great read!

  • Farewell John (Score:5, Insightful)

    by LizardKing (5245) on Tuesday March 20, 2007 @05:30AM (#18411833)
           PROGRAM FAREWELL_JOHN
           IMPLICIT NONE

           PRINT *, 'Farewell John W. Backus'

           STOP
           END

    *
    * End indeed ...
    *
    • New meme (Score:2, Interesting)

      by TuringTest (533084)
      I can see a new trend of "Goodbye cruel world" programs replacing the "Hello world" equivalents, as designers of programming language pass away.
  • It's a hoax (Score:3, Funny)

    by Bastard of Subhumani (827601) on Tuesday March 20, 2007 @05:41AM (#18411857) Journal
    Nothing on Netcraft yet.
  • by Zapotek (1032314) <tasos.laskos@gma ... com minus distro> on Tuesday March 20, 2007 @05:43AM (#18411863) Homepage
    ...you insensitive clods!!

    Show some respect instead of making lame FORTRAN jokes...
    • Re: (Score:2, Insightful)

      by Anonymous Coward
      I don't mean to be insensitive, but a lot of people die every day. Why should I stop my daily routine for just one?
      • by solevita (967690) on Tuesday March 20, 2007 @07:52AM (#18412381)

        I don't mean to be insensitive, but a lot of people die every day. Why should I stop my daily routine for just one?
        Exactly. Mocking FORTRAN is a mark of respect. We're much more insensitive to all those people who die and and don't mentioned, especially if it's the result of something easily fixed, like providing a supply of clean drinking water. A fair few people due to preventable causes whilst I was typing out this post; think about that you insensitive clod.
    • by Anonymous Coward on Tuesday March 20, 2007 @08:05AM (#18412437)
      Just because we're not openly weeping into our morning coffee does not mean we do not respect the talent and achievements of the man. I hate this attitude that death has to be seen as a sad or sorrowful time. If anything it should be a time to remember the person and their achievements; exactly what is happening here. The only time grief is called for is if you personally knew John Backus and will miss his company. Anything else is likely false grief, generated by some weird psychological conditioning that modern society has pushed on us that tells us we must grieve for people we do not know (See also: Princess Diana)
    • Re: (Score:3, Insightful)

      You don't think that the number of people here making and/or understanding the jokes about FORTRAN says more about the significance of Backus's contributions than any fawning obituary column ever could? Contrary to another poster's comment, I think most death really is sad, but since I didn't know Mr Backus personally, I prefer to reflect on what he contributed to society as a whole instead of displaying false grief.

  • by vivaoporto (1064484) on Tuesday March 20, 2007 @05:48AM (#18411881)
    With both the lack of interest and the distortion of the original goal, Computer Science as we know may be dying with the elders. Computer Science originally had nothing to do with computers (as in personal computer) per se, but with the science of computation, optimal algorithms for pure math problems, etc. Actually, it was nothing but a branch of Math. The way computer science is being dealt with nowadays, with disdain, lack of interest and with people thinking about it as a tool to put another "screw tighter" professional in the market, soon we may run out of real breakthroughs like the ones those genius created to pave the yellow brick road we run over nowadays.
    • The way computer science is being dealt with nowadays, with disdain, lack of interest and with people thinking about it as a tool to put another "screw tighter" professional in the market, soon we may run out of real breakthroughs like the ones those genius created to pave the yellow brick road we run over nowadays.
      How true.
    • Re: (Score:3, Insightful)

      by tinkertim (918832) *

      With both the lack of interest and the distortion of the original goal, Computer Science as we know may be dying with the elders. Computer Science originally had nothing to do with computers (as in personal computer) per se, but with the science of computation, optimal algorithms for pure math problems, etc. Actually, it was nothing but a branch of Math. The way computer science is being dealt with nowadays, with disdain, lack of interest and with people thinking about it as a tool to put another "screw tig

    • Re: (Score:3, Insightful)

      by dk.r*nger (460754)

      With both the lack of interest and the distortion of the original goal, Computer Science as we know may be dying with the elders. Computer Science originally had nothing to do with computers (as in personal computer) per se, but with the science of computation, optimal algorithms for pure math problems, etc. Actually, it was nothing but a branch of Math. The way computer science is being dealt with nowadays, with disdain, lack of interest and with people thinking about it as a tool to put another "screw tig

    • soon we may run out of real breakthroughs like the ones those genius created to pave the yellow brick road we run over nowadays.

      Not to belittle them, but they often picked the low-hanging fruit. Much of what can be proven about normal, deterministic computation has been proven. Want to do some groundbreaking CS research today? Start reading on quantum computing, which isn't exactly for the faint of heart. Put another way, we pretty much know how to build a von Neumann machine and program it (even if w

  • BNF (Score:5, Funny)

    by mrogers (85392) on Tuesday March 20, 2007 @05:49AM (#18411891)
    Backus is also the B in BNF. Many will mourn his parsing.
  • By the time I was clacking out my tragic FORTRAN programs on a card punch machine, the language was already over 20 years old.
  • Backus' Turing Award Lecture about FP was a true inspiration for me and has influenced a lot of what I have done over the years. Here's to you Mr Backus, your name will live on beyond eternity.
    • your name will live on beyond eternity


      It's a compliment to him that he inspired you, but come now... these grandiose statements are useless calls to undefined functions.
    • I downloaded that PDF, saw something that looked a lot like APL to my blissfully ignorant eyes, and ran screaming. Did he really apologize for writing FORTRAN by writing APL, and if so, why didn't he die of lead poisoning?

  • by jandersen (462034) on Tuesday March 20, 2007 @06:08AM (#18411963)
    ...Backus's apology for creating FORTRAN...

    (yes, yes, I know, he's no apologising in the usual sense; this is a play on words, or a pun, as it is also known)

    Still, FORTRAN was and still is one of the great programming languages. There are many languages that offer better features and are much suitable for general usage, but there's huge number of programs written in FORTRAN, and many in science still prefer it to C/C++; FORTRAN is very well suited for numerical calculations, which is after all what is was made for.

    • Re: (Score:3, Informative)

      by Just Some Guy (3352)

      (yes, yes, I know, he's no apologising in the usual sense; this is a play on words, or a pun, as it is also known)

      Not quite:

      Source: WordNet (r) 1.7
      apology
      n 1: an expression of regret at having caused trouble for someone; "he wrote a letter of apology to the hostess"
      2: a formal written defense of something you believe in strongly [syn: apologia]

      (this is another accepted meaning of a word, or an alternate meaning, as it is also known)

  • rest in peace (Score:5, Informative)

    by dario_moreno (263767) on Tuesday March 20, 2007 @06:15AM (#18411991) Homepage Journal
    Maybe it's because I was breastfed with BASIC from a very young age, but when I was forced to learn FORTRAN to work on legacy code I discovered after some initial, computer science taught disgust, that it was really the best way to express myself in code, better than with anything else, and I owe my present university position to FORTRAN because it made me so productive. I guess it was because the language was conceived by engineer, scientists oriented types, and not by formal logic adepts or grammar nazis. I still teach FORTRAN to this day, using F90/F95 in all its power, and MATLAB-like exposed students tend to enjoy it because they can develop simple and efficient numerical codes much faster than with anything else; some of them found positions thanks to it. The trick is to use FORTRAN for what it's for (numerical arrays, heavy linear algebra, easily parallelizable scientific computing) and not strings or files manipulation, linked lists (LISP) , graphics or system : for that there is C(++), and tons of libraries. If the code grows larger than 10 000 lines, very strong discipline is necessary, and that's where true OO can be pertinent. In scientific code FORTRAN tends to be 20% faster than the best possible C++ implementation because the grammar is so simple that compilers tend to understand better the code and can vectorize or optimize it much farther than C ; and there is much less overhead than with C++ because the objects are simpler to manipulate. Major code used in the industry (Star-CD, Gaussian for instance) is still written in FORTRAN for those (and legacy) reasons.
    • by iangoldby (552781)

      The trick is to use FORTRAN for what it's for ... and not strings or files manipulation, linked lists (LISP) , graphics or system
      You mean there's life after forms, databases, and web 2.0? ;-)
      • Re: (Score:3, Insightful)

        by Threni (635302)
        > You mean there's life after forms, databases, and web 2.0? ;-)

        I'm sure there are millions of HTML hairdressers out there who don't know the first thing about real programming.
    • Re:rest in peace (Score:5, Insightful)

      by justthinkit (954982) <floyd@just-think-it.com> on Tuesday March 20, 2007 @07:19AM (#18412251) Homepage Journal
      Mod parent up one more, he deserves a +5. As an engineering student in the later 70s/80s, Fortran was all I knew or cared to know. My one Comp Sci course was beginning Fortran programming -- the whole thing is probably learnable in a few hours today. My final year thesis was a 6000 line Fortran simulation used to determine the feasibility of building a "Two Stage Spouted Bed Coal Pyrolysis Plant" in China (it was).

      95 percent of the people who programmed in the early years would never have done it without Fortran.

      It is easy to criticize, as many other posts have done, something invented half a century ago. Personally, I miss being able to use Fortran (or a procedural basic) to solve today's problems -- we've given ourselves over to the machine's favorite language (C) while we pat ourselves on the back for how smart we are now (as we create write-only code).

      I wish this [cminusminus.org] had become more popular. There's still time.
    • Re:rest in peace (Score:5, Insightful)

      by Wormholio (729552) on Tuesday March 20, 2007 @08:04AM (#18412433)
      I too still teach my students (in physics and astronomy) to use Fortran, for many of the reasons listed above. While it may also be useful for them to go on to learn other languages, their primary focus is on the physics problems they need to solve and the numerical algorithms needed to help them do that. Fortran makes it easy for them to get started and then focus on the calculations, not on grammar or philosophy.

      Fortran has been criticized because you can write "spaghetti code" or other crap, while other languages supposedly protect you from the mistakes you can make in Fortran. But you can write crappy code in any language (including "spaghetti classes"). I teach my students to write with good style. They know their code has to be clearly understandable not just to the machine but also to someone else who is familiar with the goal of the code but not the details. Trying to enforce good style through grammar is misguided at best, just as it is in writing in general. Developing good style is a personal, ongoing process for writing anything, including good code.
  • by Wizard052 (1003511) on Tuesday March 20, 2007 @06:41AM (#18412095)
    What's so wrong with FORTRAN? From the sound of things, it's like the guy committed a crime or something...if it was so 'destructive' or whatever then how come it got so popular? Or did it? Why did so many choose to use it?
    And for that matter, what IS 'constructive'? Maybe C++? And whatever that is, it wasn't influenced in any way by FORTRAN?

    Just evolution, people... the TV scorning the radio as backward!?
    • Sure it's flawed in certain ways by todays standards, but that fact that it still has an application really speaks to it's design. It was the FIRST high level language for cripes sake.
    • Re: (Score:3, Interesting)

      by MichaelSmith (789609)

      What's so wrong with FORTRAN?

      Well nothing really. It was a good, early attempt. Its mistake was in surviving too long.

      From the sound of things, it's like the guy committed a crime or something

      Yeah I have been one of the worst offenders in this article. Sorry about that. He was obviously an accomplished guy and I am sorry he is gone.

      ...if it was so 'destructive' or whatever then how come it got so popular?

      Hard to explain. It attracted a certain, lets say, blue collar group of programmers. People who lik

      • FORTRAN survived because it was the best at what it did. I'm sure it did get used in tasks that it wasn't well suited for, partly because the alternative was assembler language, but for math/science apps, it ruled.
  • obligatory (Score:2, Funny)

    by marafa (745042)
    was he related to A Backus?
  • If Mr. Backus hadn't developed fortran, would we be as advanced scientificaly as we are now?
  • by Edward Kmett (123105) on Tuesday March 20, 2007 @07:24AM (#18412263) Homepage

    I find it somewhat troubling that in this article John Backus is remembered primarily for the genie that he tried to put back in the bottle.

    FORTRAN was utilitarian and procedural and good at enabling engineers and scientists to get work done. However, the problem with FORTRAN is the imperative pattern of though that it imposed led us to tell the computer a precise sequence of steps to accomplish each task. It doesn't offer information on dependencies, simply a "go here, do that" sequence of instructions. Imperative programs are inherently hard to reason about in terms of global state and effects and as written tend to be subject to off-by-one errors.

    Backus saw this in 1978! See http://http//www.stanford.edu/class/cs242/readings /backus.pdf [http].

    His insight spawned a great deal of the interest in functional programming languages. It was been credited by Paul Hudak of Haskell fame http://portal.acm.org/citation.cfm?doid=72551.7255 4 [acm.org] (ACM membership required) (summarized here http://lambda-the-ultimate.org/classic/message4172 .html [lambda-the-ultimate.org]) and others as really helping to turn the tide and kept functional programming languages from being snuffed out.

    A lot of people don't see the point, having never programmed in a functional programming language like Haskell or ML. However even those people see dozens of cores on the horizon and wonder how they are going to deal with the debugging issues associated with all of the threads to keep those processors churning.

    Functional programming offers an alternative viewpoint that is arguably much better suited to handle multiple CPUs working on large datasets. A case for this was recently reiterated by Tim Sweeney of Epic Megagames fame who said "in a concurrent world, imperative is the wrong default!" http://www.st.cs.uni-sb.de/edu/seminare/2005/advan ced-fp/docs/sweeny.pdf [uni-sb.de].

    Haskell has brought Software Transactional Memory (STM) into play offering an alternative approach to traditional mutexes and locks that is compositional in nature unlike locking models. This is an approach that isn't readily emulable in an imperative setting because of the lack of guarantees about side effects. http://research.microsoft.com/~simonpj/papers/stm/ index.htm [microsoft.com].

    These are solutions to real problems that we are experiencing today, not some academic sideshow, and they arise from a school of thought that he helped bring a great deal of attention to.

    If you want to do something to remember Backus take the time to learn OCaml or Haskell or even just take the time to learn how to effectively use the map and fold functions in Perl, PHP or Ruby.

    It is his willingness to turn his back on what was percieved as his greatest work when confronted with a better idea for which I will remember him and I am a better programmer today for having learned what I could from his ideas.

    • by p3d0 (42270) *

      Imperative programs are inherently hard to reason about in terms of global state and effects and as written tend to be subject to off-by-one errors.

      Backus saw this in 1978!

      And McCarthy saw this in 1958! [wikipedia.org]
  • by DollyTheSheep (576243) on Tuesday March 20, 2007 @07:39AM (#18412313)

    First there was machine language. You hand coded all the little ones and zeros manually to get your machine code. Then came assembler which was a great time saver with all its mnemonics, registers and loops.

    The next step was a real higher-level language: FORTRAN. Its estimated, that this meant a time saving ratio for programmers of 10:1 against assembler. This rate of improvement was never reached again. All other improvements in programming are only incremental compared to that.
    • Re: (Score:3, Insightful)

      by be-fan (61476)
      The improvement from FORTRAN to a modern Lisp (circa 1985) is not incremental at all. Relative to assembly, FORTRAN abtracts registers into variables, and branches into loops and functions. Additionally, it automates static storage layout. Relative to FORTRAN, Lisp additionally abstracts memory into objects, machine arithmetic into actual arithmetic*, and simple functions into higher-order, polymorphic functions**. Moreover, it automates dynamic storage management, and abstracts large-scale code patterns wi
  • by richieb (3277)
    Oh, my first program was in FORTRAN.

    In FORTRAN "GOD" is REAL, unless declared INTEGER. ;-)

  • by TwobyTwo (588727) on Tuesday March 20, 2007 @09:47AM (#18413359)


    When I was in my early 20s and had been programming only a few years, and John was already a legend and IBM Fellow for his work on FORTRAN, I had the pleasure of meeting him informally a few times. You would have thought our positions and experiences were nearly the same. He was always as engaged and delighted with younger people like me as with other giants of the computer field, some of whom were standing right with us at those get togethers (Jim Gray [wikipedia.org] comes to mind). John was extraordinarily decent, kind, and down-to-earth, and he will be very much missed.



    I think some of the wise guys/gals on this list are missing the point of the FORTRAN team's contributions. It wasn't that FORTRAN was the perfect language. To some degree, that wasn't even the goal. Quoting from an an article by Backus [acm.org] (full text is available only to ACM subscribers, unfortunately):

    "To this day I believe that our emphasis on object program efficiency rather than on language design was basically correct. I believe that had we failed to produce efficient programs, the widespread use of languages like FORTRAN would have been seriously delayed.".


    At the time the FORTRAN work was done, people didn't believe that a compiler could produce code that was fast enough. If you go back to the early references on FORTRAN you'll find that they implemented optimizations that were still considered sophisticated 15 years later. The difference is: the FORTRAN team did it at a time when nobody had done it before. Furthermore, they did it on an IBM 704 [ibm.com] that would be too weak (if not too small!) to power a wrist watch today. Its core storage units [ibm.com] were tens of cubic feet in size, and each held 4K 36 bit words, or just over 32K bytes in modern terms. Even the "high speed" drum storage units (like a disk, but with no seeking needed) held only 16K of those 36 bit words. On this machine, they built optimizations that were considered sophisticated even decades later, when machines had gotten much bigger and faster. Quoting from that same article:

    "It is beyond the scope of this paper to go into the details of the analysis which section 2 [I.e. the optimizer] carried out. It will suffice to say that it produced code of such efficiency that its output would startle the programmers who studied it. It moved code out of loops where that was possible; it took advantage of the differences between rowwise and column-wise scans; it took note of special cases to optimize even the exits from loops. The degree of optimization performed by section 2 in its treatment of indexing, array references, and loops was not equalled again until optimizing compilers began to appear in the middle and late sixties."

    The computing field has lost someone very special.

  • I read about him a few hours ago and Interestingly (and it seems erroneously) enough, my Discrete Mathematics book (Discrete Mathematics With Applications) lists him as having died in 1998.

Someone is unenthusiastic about your work.

Working...