# Fortran on Facebook

**URL:** <https://fortran-lang.discourse.group/t/fortran-on-facebook/8638>\
**Category:** Uncategorized\
**Created:** [September 21, 2024, 8:46am UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638 "2024-09-21T08:46:14Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![cmaapic](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/cmaapic/32/659_2.png) [@cmaapic](https://fortran-lang.discourse.group/u/cmaapic)\
**Post date:** [September 21, 2024, 8:46am UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/1 "2024-09-21T08:46:14Z")

</div>

A friend posted this link.

> **[Mainframers | \*\*FORTRAN \*\*turns 70 | Facebook](https://www.facebook.com/groups/ProfessionalMainframers/permalink/2250627855292241/?mibextid=K35XfP&rdid=34KQUTRFhQ9duQe4&share_url=https%3A%2F%2Fwww.facebook.com%2Fshare%2Fp%2FZKaPLjQX32YiooJz%2F%3Fmibextid%3DK35XfP)**
>
> \*\*FORTRAN \*\*turns 70!

and this is a follow up

> **[Log into Facebook](https://www.facebook.com/photo?fbid=547631251059818&set=pcb.2250627855292241)**
>
> Log into Facebook to start sharing and connecting with your friends, family, and people you know.

and here is another

> **[Fortran | IBM](https://www.ibm.com/history/fortran?fbclid=IwY2xjawFbZvVleHRuA2FlbQIxMAABHS8rw3EArjzDa5Ah_bUt_jtTlKRY0QJerhNWwvb5dnExwKa4DKtmfkbpXA_aem_gQAwVkQv9BhlkW_wmxYxKg)**
>
> The world’s first programming language standard opened the door to modern computing.

May be of some interest.

Ian

---

<div class="post-metadata">

**Author:** ![ivanpribec](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/ivanpribec/32/3290_2.png) [@ivanpribec](https://fortran-lang.discourse.group/u/ivanpribec)\
**Post date:** [September 21, 2024, 9:35am UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/2 "2024-09-21T09:35:01Z")

</div>

> [@cmaapic](#):
>
> [Fortran | IBM](https://www.ibm.com/history/fortran?fbclid=IwY2xjawFbZvVleHRuA2FlbQIxMAABHS8rw3EArjzDa5Ah_bUt_jtTlKRY0QJerhNWwvb5dnExwKa4DKtmfkbpXA_aem_gQAwVkQv9BhlkW_wmxYxKg)

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.

---

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [September 21, 2024, 10:33am UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/3 "2024-09-21T10:33:26Z")

</div>

> [@ivanpribec](#):
>
> So either 6 people working on it for 3 years, or 9 for 2 years, depending on when you count the compiler as finished.

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](https://doi.org/10.1145/1455567.1455599).

---

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [September 21, 2024, 10:41am UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/4 "2024-09-21T10:41:58Z")

</div>

Considering that [Lois M. Haibt](https://fortran-lang.discourse.group/t/deeply-hidden-in-the-archives-lois-m-haibt-american-philosophical-society/8563) was in the team, we could also say: 18 man&woman years (or 18 human years).

---

<div class="post-metadata">

**Author:** ![ivanpribec](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/ivanpribec/32/3290_2.png) [@ivanpribec](https://fortran-lang.discourse.group/u/ivanpribec)\
**Post date:** [September 21, 2024, 11:08am UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/5 "2024-09-21T11:08:08Z")

</div>

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).

---

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [September 21, 2024, 12:36pm UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/6 "2024-09-21T12:36:08Z")

</div>

> [@ivanpribec](#):
>
> also woman contains the root man

I was curious about the origin of the prefix “wo”, and find this in the [Merriam-Webster](https://www.merriam-webster.com/dictionary/woman) 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

---

<div class="post-metadata">

**Author:** ![wspector](https://avatars.discourse-cdn.com/v4/letter/w/47e85d/32.png) [@wspector](https://fortran-lang.discourse.group/u/wspector)\
**Post date:** [September 21, 2024, 3:56pm UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/7 "2024-09-21T15:56:21Z")

</div>

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

> **[Log into Facebook](https://www.facebook.com/groups/90154425176)**
>
> Log into Facebook to start sharing and connecting with your friends, family, and people you know.

---

<div class="post-metadata">

**Author:** ![certik](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/certik/32/4_2.png) [@certik](https://fortran-lang.discourse.group/u/certik)\
**Post date:** [September 21, 2024, 4:13pm UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/8 "2024-09-21T16:13:01Z")

</div>

@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).

---

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [September 21, 2024, 4:23pm UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/9 "2024-09-21T16:23:44Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![ivanpribec](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/ivanpribec/32/3290_2.png) [@ivanpribec](https://fortran-lang.discourse.group/u/ivanpribec)\
**Post date:** [September 21, 2024, 4:43pm UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/10 "2024-09-21T16:43:16Z")

</div>

I found the post I was referring to: [State of LLVM Flang Development - #14 by certik](https://fortran-lang.discourse.group/t/state-of-llvm-flang-development/8174/14)

> [@vmagnin](#):
>
> Now, the difficulty is that the 1956 FORTRAN manual was 54 pages long, whereas the Fortran 2023 standard (draft) is 681 pages long.

The fact that the language has some [dark corners](https://github.com/klausler/fortran-wringer-tests?tab=readme-ov-file#writing-portable-fortran) 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.).

---

<div class="post-metadata">

**Author:** ![certik](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/certik/32/4_2.png) [@certik](https://fortran-lang.discourse.group/u/certik)\
**Post date:** [September 21, 2024, 5:20pm UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/11 "2024-09-21T17:20:11Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [September 21, 2024, 6:43pm UTC](https://fortran-lang.discourse.group/t/fortran-on-facebook/8638/12 "2024-09-21T18:43:04Z")

</div>

> [@ivanpribec](#):
>
> a large variety of hardware and instructions sets,

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).
