Fortran on Facebook

A friend posted this link.

and this is a follow up

and here is another

May be of some interest.

Ian

2 Likes

This link shows the initial team of 9. In some compilers books I read that it took 18 man-years to release the initial compiler. This roughly matches the timeline here:

From its creation in 1954 and its commercial release in 1957 as the progenitor of software, …

So either 6 people working on it for 3 years, or 9 for 2 years, depending on when you count the compiler as finished.

I lost track of the thread where @certik gave some similar numbers.

2 Likes

According to Backus himself:

Two and one-half years and 18 man years have elapsed since the beginning of the project. The FORTRAN system is now complete.

  • Backus, J. W., H. Stern, I. Ziller, R. A. Hughes, R. Nutt, R. J. Beeber, S. Best, et al. « The FORTRAN Automatic Coding System ». In Papers Presented at the February 26-28, 1957, Western Joint Computer Conference: Techniques for Reliability on - IRE-AIEE-ACM ’57 (Western), 188‑98. Los Angeles, California: ACM Press, 1957. https://doi.org/10.1145/1455567.1455599.
1 Like

Considering that Lois M. Haibt was in the team, we could also say: 18 man&woman years (or 18 human years).

I guess this is a “feature” of english as “man” can be thought of as in human or mankind (also woman contains the root man). In my mother tongue we would say “delovnih let” (work-years).

2 Likes

I was curious about the origin of the prefix “wo”, and find this in the Merriam-Webster dictionary:

Etymology
Middle English, from Old English wīfman, from wīf woman, wife + man human being, man
First Known Use
before the 12th century

This facebook group (“Fortran Professional Development Group”) has been around for a while. Traffic varies:

@ivanpribec modern Fortran compilers take longer to develop than the initial FORTRAN. They did it in 3 years with a team of 10 (let’s say), LFortran for example with a team of 5 to 10 is 4 years in, Flang about 6 years in (not sure about the size of the team, but I suspect even bigger, since I personally know at least 10 Flang developers).

2 Likes

The difficulty in the 50’s was that everything had to be invented.

Now, the difficulty is that the 1956 FORTRAN manual was 54 pages long, whereas the Fortran 2023 standard (draft) is 681 pages long.

1 Like

I found the post I was referring to: State of LLVM Flang Development - #14 by certik

The fact that the language has some dark corners doesn’t make it any easier either. On top you have additional standards like OpenMP and OpenACC, a large variety of hardware and instructions sets, various front-end optimizations, and various instrumentation features (runtime checking, warnings, etc.).

2 Likes

We also had to implement around 200 elemental/scalar/array intrinsics, each with compile time implementation for all types and a separate runtime implementation that instantiates on the types, kinds and ranks, and provides correct loop structure, and works in every case, and gives good compiler error messages for incorrect usage, and test everything. Just this project alone I think was 2 highly-skilled engineers for an equivalent of full time for at least 6 months. And we didn’t do half-precision (bfloat16 and float16) nor quadruple precision yet, “only” integer32/64, real32/64, complex 32/64, etc.

Another task is array expressions in all combinations, must be correctly decomposed into temporaries and handled without leaks and with high (optimal) performance, etc.

None of this individually is complicated, but it just takes time to get it all done.

The good news is that for LFortran at least we have implemented all of the above in a front-end independent way, so our other frontends like LPython fully reuse it (NumPy for example would require similar effort otherwise, and we got it for free). So I am super excited about this compiler technology.

1 Like

Yes, the original compiler was only for the IBM 704. The team did not even imagine it would be ported later on other machines (and outside IBM).