FORTRAN for the Web

There’s an old saying: “I don’t know what programming language scientists and engineers will use in the 22nd century, but I know it will be called FORTRAN.” FORTRAN was among the first real programming languages and, along with LISP, one of the oldest still in common use. If you are one of those that still loves FORTRAN, you no longer have to be left out of the Web development craze thanks to

Naturally, the site is served by — what else — FORTRAN. The system allows for Jade templates, SQLite databases, and other features aimed at serving up web pages. The code is hosted on GitHub, and you can find several examples there, as well.

If you’ve ever wanted to do formatted I/O to a web page, here’s your chance. Come to think of it, why not? We’ve seen servers in BASIC and even in Linux shell script. Of course, today’s FORTRAN isn’t the one we learned back in the 1970’s (we assume if you didn’t learn about FORTRAN in the 1970’s, you quit reading this post a while back… prove us wrong and show us your FORTRAN projects).

34 thoughts on “FORTRAN for the Web

    1. The following sums this up nicely. Basically, legacy code, and array behavior slightly easier for those coming from a traditional mathematical series background to understand how to use arrays to solve problems, while still maintaining the same performance as C code. For many people, programming is just a means to an ends, so they don’t care if the langugage they are using isn’t good in other ways so long as it meets their needs.

  1. Here is the actual quote about Fortran that is misquoted at the beginning of the article.

    “I don’t know what the language of the year 2000 will look like, but I know it will be called Fortran.” —Tony Hoare, winner of the 1980 Turing Award, in 1982.

      1. Fortran was 1957, Lisp and COBOL were 1959, but COBOL isn’t still in common use (at least, nowhere near as common as lisp, and that’s saying something. So yes, technically COBOL is as old as LISP, but that’s not what the statement says, it says fortran was among the first, it was, AND along with lisp is one of the oldest still in common use.

      2. I thought about putting COBOL in the mix, but I did my research at FORTRAN was indeed first (with a 1957 implementation). LISP clocks in at 1959. I arbitrarily drew a line at 1960 which was the first implementation of COBOL. All of them have proportionally earlier concept dates (1954/55 and 1956/58 and 1959).

        So all due respect to ADM Hopper, but COBOL was late to the scene.

        When I was with DDJ we used to rank programming language popularity and if you Google, lots of people still do. For “mainstream” languages that’s easy to get right, but once you get past the top 5 or so the data is usually noise, depending on how you get your data. So it is hard to really know which of the FORTRAN, LISP, and COBOL communities is more active today because they are all niche and mature. However, LISP and its close derivatives seems pretty active to me. FORTRAN seems like has a hardcore following with certain folks. COBOL strikes me as more maintenance, but that could just be because I’m too far removed from whatever hardcore is still clinging to it.

        Now personally, I liked PL/I but that’s 10 years later and not much activity lately that I know of.

  2. Fortran is indeed the first language I tried to learn way back in the mists of time. Tried to because it was a correspondence course and without any means of testing or debugging code it proved a bit too much of a hurdle for me. My lack of math skills didn’t help either.

    1. I actually sort of liked APL. Really cool to do the overstrikes with a Selectric, too. I think I remember how to compose a thumbnail. Some of them like quote-quad were easy. I always coveted one of those IBM computers with the giant switch to go between BASIC and APL (5110?). The time travel element of that just enhances it ;-) The HP9845 was a better and cheaper machine, but it didn’t have APL.

          1. I don’t know if the board was in that particular product or not, but at least one of IBM’s products emulated the 360/370 family using a pair of Motorola 68000s with non-standard microcode (!).

  3. Before I changed majors from nuclear engineering I plowed through the three honers level Fortran classes Purdue’s school of engineering had at the time (’85). Finished all three in under one semester, part of the reason they were honers level was that they were self paced.

  4. I began with FORTRAN back around 1970. In fact it began with a 1 unit course to fill out my first semester at the University. The inauspicious beginning was when I saw it and asked, “what the heck is FORTRAN?”. The next semester was assembly language and away we went from there. In spite of a number of years earning my living with FORTRAN, I feel absolutely no nostalgic fondness and hope I never see the language again.

  5. I first learned Fortran about 8 years ago when I was taking a spacecraft trajectory optimization class in grad school. The performance of some of the NLP libraries was very impressive (and free). A few of my peers were stubborn about learning “such an outdated language” and decided to use other languages and it was funny watching my code solve our homework problems in 30 seconds while they literally had time to go eat dinner and come back while asking everyone to not touch their workstation. One guy even used MATLAB’s fsolve function, which had laughable performance. He kept using it for the entire semester, very stubborn and it caused him nothing but trouble. If I made a mistake and had to re-run my code I only lost a few minutes, they were losing hours, or even days.

    After that I saw Fortran in a lot of different areas in the aerospace industry. Our supercomputers at school that sit around constantly analyzing GRACE mission data are all doing so on code written in Fortran. GRACE is a mission that we use to detect variations in the gravitational field of the earth at unprecedented high resolution. That thing has generated endless terabytes of data so far.

    Also saw it in industry, where I spent a lot of time improving orbit analysis tools. Those sorts of things are great for Fortran because of the awesome power at solving linear algebra problems. I brought a lot of the older FORTRAN 66 and 77 code up to modern 95/2003 standards, but some of it was best left as it was because it worked flawlessly with the newer stuff anyway. Learning how to code that legacy stuff was definitely an adventure though.

  6. Fortran will die when another language offers rapid coding in a style that mimics written mathematics. Matlab and Numpy are close, but both mostly interface to Fortran code. I develop my computational kernels in Fortran, and wrap it in a Python or C/C++ UI. There are more tools than a hammer in a toolbox.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s