A farewell to Simon Peyton Jones as he leaves Microsoft Research
Subject: RE: New horizon
I would like to add a few words to what Chris has written. I know I am also speaking for Mads, the current lead designer of C# (cc’d)
From 1997 to 2015, Simon PJ was pivotal in the Programming Principles and Tools group at MSR Cambridge. The work of that group included major contributions to the research and practice of programming, a stream of seminal publications,..
... and succeeded in changing the conceptual foundation of programming for millions of programmers through direct contributions to Haskell, C# and F# - and transitively through profound influence on other languages.
From the perspective of the 10-20 million professional developers in the world, this is amongst the most influential work to come out of Microsoft Research, because they use the results of that work every day.
Microsoft of course has made much through the position it has established in the developer market in the last 30 years – it is the bed rock of the company, and that will remain the case for many years to come.
Throughout this time Simon PJ has been an inspiration, assistance and guiding light (direct or indirect) for many of the activities that have been done in languages and libraries.
This is true whether directly through his immensely perceptive technical insight and utterly charming personality, or indirectly through his work on Haskell and other technical contributions.
One example - when the Task Parallel Library for .NET was created by Daan Lleijen, Joe Duffy and Stephen Toub, Joe was literally wearing a lambda tattoo.
That library and its counterpart in C# async programming is now used by millions directly, and influences C++, Python, TypeScript and many more.
The point of view on programming that underlay that library was functional, and compositional.
The vehicle by which that influence was conveyed into Joe Duffy’s mind was Haskell.
The man making Haskell was Simon (and other contributors, all deeply inspired by Simon).
If you are a modern programmer, Simon PJ owns your mind.
The way we think about programming is the way Simon thinks about programming. Except where it isn’t, in which case we’re probably wrong, or you're in for a fascinating and robust conversation with the gentle man.
That is just one example – there are countless others. Haskell itself is learned directly by many thousands and continues to be recognized as the gold standard in research in functional programming.
The influence of Haskell (and the point of view on computation it represents) shows through in almost every area of computing – from research to industry, from education to the most advanced areas of machine learning programming.
Simon's influence will resonate down the ages, long after we’re all long gone. He has made a lasting mark on history.
I want to thank Simon for his influence on my own work - again sometimes indirect - also for his limitless personal kindness, and everything he has brought to Microsoft. His charitable giving has been an inspiration to many, and he is a man of dignity.
From my perspective he has been a hugely valued asset to the company and it is deeply sad to have to say goodbye. I look forward to having him as a colleague in the world of open source and hope that our paths cross often.
One simple way to help F# is to help us fill in basic F# code samples for all the F# core library functions. These should have been done long ago, but let's do them now!
@chaldal.com is a global company centred in Dhaka, Bangladesh. You can read more about them on their website.
I've long believed F# could have a strong role in up-tooling the software skills of developing nations, giving them a competitive advantage.
But for me, this one is also very personal.
In 1993 I had the opportunity to travel to Bangladesh, to visit my brother, who was working doing flood modelling on the internationally sponsored Flood Action Program.
"All our new code is in F#, we started off from a C# codebase, so that made the transition somewhat manageable, as new F# code can be directly called from C#, and vice versa (still took over 2 years)..."
".... All new frontend apps are also being written in F# (using Fable), as of 6 months back, migrating away from TypeScript, this forces everyone into a "design your model first, and well" paradigm...."
It's really strange what nonsense people put up with in C#.
This business where expression results are implicitly discarded from statements is just insane in the 21st century. So much information loss just waiting to happen without even a warning.
Other gaping holes in the C# design I've noticed this last week:
- no way to implement interfaces or abstract classes using an expression, meaning stupid extra classes
- no implicit construction for classes (to give another form of closure capture for object imlpementations)
- no expression form for generative list or sequence expressions (making HTML DSLs a mess among other things)
If mass wearing of masks make just 0.01 shift in the spread per day, from say 1.22x to 1.21x, there would now be ~20% fewer cases (and ~20% fewer deaths) in the UK since March 12.
I had to double check that multiple times.
This sort of result should have been hammered into our collective consciousness throughout February and early March. Every little effective intervention, widely adopted, saves many, many lives.
The thing is, that 0.01 difference accrues every single day, afresh - and slightly compounded too. Every day we do a small, effective intervention, we accrue it's life saving effect all over again. Every single day. All over again.
That Cummings and Vallance are allies doesn't surprise me at all. Things are on a slightly better track now but expect them to be back with herd immunity, and also to cover their tracks.
"the government had 'bet' the future of the UK on advice from a very small group of scientists that for a long time differed from the wider international consensus"