<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Consolas;
panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0in;
font-size:10.0pt;
font-family:"Courier New";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:Consolas;}
span.EmailStyle23
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:475923861;
mso-list-template-ids:-1445979562;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level2
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:1.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:1.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:2.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level5
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:2.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:3.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:3.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level8
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:4.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:4.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1
{mso-list-id:1386681763;
mso-list-type:hybrid;
mso-list-template-ids:1117027978 -1937878982 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l1:level1
{mso-level-start-at:0;
mso-level-number-format:bullet;
mso-level-text:-;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Calibri",sans-serif;
mso-fareast-font-family:Calibri;}
@list l1:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l1:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l1:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l1:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l1:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l1:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l1:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l1:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style>
</head>
<body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Yes, the evil-ution of languages proceeded at a much more stately pace in “arpanet” days.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Typically, you’d have a bunch of vendor specific versions, and since PCs per-se didn’t exist, you bought the compiler for the machine you had. And then, maybe you paid attention to the notes in the back of the manual about deviations from
the Fortran IV, 66, or 77. Most compilers had extensions from the IV/66 (or 77) – quoted strings, for instance, instead of Hollerith constants, and free form input. Some allowed array index origins other than 1 (handy for FFTs where you wanted to go from
-N/2 to N/2). Most also had some provision for direct access to files, as opposed to sequential, but it was very, very OS dependent.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Probably by the 80s and early 90s, with widespread use of personal computers, and the POSIX standard, you started to see more “machine independent, standards compliant” Fortran. And, you saw the idea of buying your compiler from someone
different than the computer maker, i.e. companies like Absoft and Portland Group (now part of nvidia), partly because the microcomputer manufacturers had no interest in developing compilers for cheap processors, and sometimes to accommodate a specialized need.
Hence products like Fortran for 8080 under CP/M from Digital Research. ( I ran Cromemco Fortran IV in 48k of RAM on my mighty Cromemco Z80 at 4MHz, which I believe was a variant of Fortran-80 from DR)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">But even then, it was a pretty slow evolution – the Fortran compilers I was running in the 80s on microcomputers under MS-DOS wasn’t materially different from the Fortran I was running in 1978 on a Z80, which wasn’t significantly different
from the Fortran I ran on mainframes (IBM 360, CDC 6xxx, etc.) and minis (IBM 1130, PDP-11 in the 60s and 70s. What would change is things like the libraries available to do “non-standard” stuff (like random disk access).<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">Beowulf <beowulf-bounces@beowulf.org> on behalf of "beowulf@beowulf.org" <beowulf@beowulf.org><br>
<b>Reply-To: </b>Prentice Bisbal <pbisbal@pppl.gov><br>
<b>Date: </b>Monday, October 19, 2020 at 12:21 PM<br>
<b>To: </b>"Renfro, Michael" <Renfro@tntech.edu>, "beowulf@beowulf.org" <beowulf@beowulf.org><br>
<b>Subject: </b>Re: [Beowulf] ***UNCHECKED*** Re: Re: [EXTERNAL] Re: Re: Spark, Julia, OpenMPI etc. - all in one place<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p>That's exactly what I suspected. I guess 13 years is like an eternity in the modern "Speed of the Internet" world we live in, but may not have been such a slow evolution time of the pre-Internet days.
<o:p></o:p></p>
<p>Prentice<o:p></o:p></p>
<div>
<p class="MsoNormal">On 10/19/20 2:53 PM, Renfro, Michael wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">Minor point of pedagogy from my place in the "learned FORTRAN 77 in 1990" crowd: your instructor's options would have been:<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<ul style="margin-top:0in" type="disc">
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3">standard FORTRAN 77
<o:p></o:p></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3">vendor-specific dialect of FORTRAN (VAX or otherwise)
<o:p></o:p></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3">maybe a pre-release of FORTRAN 90? Wasn't released and standardized until 1991-92.
<o:p></o:p></li></ul>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Never mind the availability of texts for same.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">Beowulf <a href="mailto:beowulf-bounces@beowulf.org">
<beowulf-bounces@beowulf.org></a><br>
<b>Date: </b>Monday, October 19, 2020 at 12:06 PM<br>
<b>To: </b><a href="mailto:beowulf@beowulf.org">beowulf@beowulf.org</a> <a href="mailto:beowulf@beowulf.org">
<beowulf@beowulf.org></a><br>
<b>Subject: </b>Re: [Beowulf] ***UNCHECKED*** Re: Re: [EXTERNAL] Re: Re: Spark, Julia, OpenMPI etc. - all in one place</span><o:p></o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
On 10/19/20 10:28 AM, Douglas Eadline wrote:<br>
> --snip--<br>
><br>
>> Unfortunately the presumption seems to be that the old is deficient<br>
>> because it is old, and "my generation†didn't invent it (which is<br>
>> clearly perverse; I see no rush to replace English, French, … which are<br>
>> all older than any of our programming languages, and which adapt, as do<br>
>> our programming languages).<br>
>><br>
> I think this has a lot to do with the Fortran situation. In these "modern"<br>
> times, software seems to have gone from "releases" to a "sliding<br>
> constant release" cycle and anything not released in the past few<br>
> months is "old."<br>
><br>
> How many people here will wait a 2-6 months before installing<br>
> a "new version" of some package in production to make sure there<br>
> are no major issues. And of course keep older version options<br>
> with software modules. Perhaps because I've been at this a while,<br>
> I have a let it "mellow a bit" approach to shinny new software.<br>
><br>
> I find it odd that Fortran gets placed in the "old software box"<br>
> because it works while new languages with their constant feature<br>
> churn and versions break dependency trees all over the place,<br>
> and somehow that is good thing. Now get off my lawn.<br>
><br>
> --<br>
> Doug<br>
><br>
Now we're starting to veer of course a little here, but what the hell...<br>
<br>
I think that one of the problems with Fortran is a complete<br>
misunderstanding of it's purpose. People are always shocked when I tell<br>
them the scientists I support are "still" using Fortran. Many people<br>
think that C and C++ replaced Fortran, but that is not true. C was<br>
designed to do low-level programming for tasks like writing operating<br>
systems, and C++ is just an extension of the C language to support<br>
Object-Oriented Programming. Both C and C++ are lower-level and more<br>
general purpose than Fortran.<br>
<br>
Fortran is a domain-specific language, meaning it was meant for a<br>
special purpose, which in this case is doing mathematical operations,<br>
and it's very good for those sorts of things. It's trivial to create<br>
multidimensional arrays in Fortran, which is useful for many math<br>
operations, but C doesn't even support anything beyond 1D arrays. Sure<br>
you can mimic multidimensional arrays by keeping track of stride length,<br>
etc., but that's a lot of work, and I'm betting that's work a lot of<br>
scientists would rather not do. That's just one example of Fortran being<br>
friendlier for science. I'm sure there are other examples, but I'm not a<br>
programmer, and definitely NOT a Fortran programmer.<br>
<br>
I think the main reason most people look at Fortran as an old and<br>
outdated language is because it stuck to the "punch card" formatting<br>
long after punch cards and punch card readers disappeared, but I'm not<br>
sure who to blame for that. Do I blame my freshman "Programming for<br>
Engineers" instructor who taught me Fortran 77 in 1991, or do I blame<br>
whoever maintains the Fortran standard for not updating it before then?<br>
(I honestly don't know what the latest version of Fortran was in the<br>
fall of 1991).<br>
<br>
Prentice<br>
<br>
_______________________________________________<br>
Beowulf mailing list, <a href="mailto:Beowulf@beowulf.org">Beowulf@beowulf.org</a> sponsored by Penguin Computing<br>
To change your subscription (digest mode or unsubscribe) visit <a href="https://urldefense.us/v3/__https:/nam11.safelinks.protection.outlook.com/?url=https*3A*2F*2Fbeowulf.org*2Fcgi-bin*2Fmailman*2Flistinfo*2Fbeowulf&data=04*7C01*7CRenfro*40tntech.edu*7C8486662b21394e7039e408d8745157c5*7C66fecaf83dc04d2cb8b8eff0ddea46f0*7C1*7C0*7C637387240011631429*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000&sdata=lpfkkIZiPQ734YkMGHzI3M27w5RmZhkJ8dDbAD765dQ*3D&reserved=0__;JSUlJSUlJSUlJSUlJSUlJSUlJSU!!PvBDto6Hs4WbVuu7!dbjGYkPB4I_e3Mpwg3ymxEHvrBoG1cZSjqXNtiKg304pOV-Gy0YzVZwDH06Ry2bLTDuCUDU$">
https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbeowulf.org%2Fcgi-bin%2Fmailman%2Flistinfo%2Fbeowulf&data=04%7C01%7CRenfro%40tntech.edu%7C8486662b21394e7039e408d8745157c5%7C66fecaf83dc04d2cb8b8eff0ddea46f0%7C1%7C0%7C637387240011631429%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=lpfkkIZiPQ734YkMGHzI3M27w5RmZhkJ8dDbAD765dQ%3D&reserved=0</a><o:p></o:p></p>
</div>
</blockquote>
<pre>-- <o:p></o:p></pre>
<pre>Prentice Bisbal<o:p></o:p></pre>
<pre>Lead Software Engineer<o:p></o:p></pre>
<pre>Research Computing<o:p></o:p></pre>
<pre>Princeton Plasma Physics Laboratory<o:p></o:p></pre>
<pre><a href="https://urldefense.us/v3/__http:/www.pppl.gov__;!!PvBDto6Hs4WbVuu7!dbjGYkPB4I_e3Mpwg3ymxEHvrBoG1cZSjqXNtiKg304pOV-Gy0YzVZwDH06Ry2bL3ZCPgrk$">http://www.pppl.gov</a><o:p></o:p></pre>
</div>
</body>
</html>