moving to COFF

On Tue, Feb 11, 2020 at 5:00 AM Rob Pike <robpike@gmail.com> wrote:
My general mood about the current standard way of nerd working is how unimaginative and old-fashioned it feels.  
...

But I'm a grumpy old man and getting far off topic. Warren should cry, "enough!".

-rob

@Rob - I hear you and I'm sure there is a solid amount of wisdom in your words.   But I caution that just, because something is old-fashioned, does not necessarily make it wrong (much less bad). 

I ask you to take a look at the Archer statistics of code running in production (Archer large HPC site in Europe):  http://archer.ac.uk/status/codes/

I think there are similar stats available for places like CERN, LRZ, and of the US labs, but I know of these so I point to them.

Please note that Fortran is #1 (about 80%) followed by C @ about 10%, C++ @ 8%, Python @ 1% and all the others at 1%.

Why is that?   The math has not changed ... and open up any of those codes and what do you see:  solving systems of differential equations with linear algebra.   It's the same math my did by hand as a 'computer' in the 1950s.

There is not 'tensor flows' or ML searches running SPARK in there.  Sorry, Google/AWS et al.   Nothing 'modern' and fresh -- just solid simple science being done by scientists who don't care about the computer or sexy new computer languages.   

IIRC, you trained as a physicist, I think you understand their thinking.  They care about getting their science done.

By the way, a related thought comes from a good friend of mine from college who used to be the Chief Metallurgist for the US Gov (NIST in Colorado).  He's back in the private sector now (because he could not stomach current American politics), but he made an important observation/comment to me a couple of years ago.  They have 60+ years of metallurgical data that has and his peeps have been using with known Fortran codes.   If we gave him new versions of those analytical programs now in your favorite new HLL - pick one - your Go (which I love), C++ (which I loath), DPC++, Rust, Python - whatever, the scientists would have to reconfirm previous results.  They are not going to do that.  It's not economical.   They 'know' how the data works, the types of errors they have, how the programs behave etc.   

So to me, the bottom line is just because it's old fashioned does not make it bad.  I don't want to write an OS in Fortran-2018, but I can wrote a system that supports code compiled with my sexy new Fortran-2018 compiler.

That is to say, the challenge for >>me<< is to build him a new supercomputer that can run those codes for him and not change what they are doing and have them scale to 1M nodes etc..