CUFP 2011 Keynote: Pragmatic Haskell (Lennart Augustsson Standard Chartered Bank)
Why Hacker News recommends it
It is the reference for Mu, Standard Chartered's strict Haskell, and for the practical case that strictness makes debugging easier.
What it is
Lennart Augustsson's CUFP 2011 keynote covers using Haskell commercially at Standard Chartered Bank. He discusses non-standard Haskell implementations, including a strict dialect, and weighs strict against lazy evaluation.
Recommended by 0 HN commenters across 0 different months, 2015 to 2023.
What Hacker News said
Cites gmfawcett · 2015-09 · on “Analyzing Three Space Leaks in Haskell”
While it's not publicly available, there is a strict dialect of Haskell called Mu, owned by Standard Chartered. See [this video] . It would be nice if the rest of us could play with it, but so it goes.
Cites wz1000 · 2016-11 · on “A Look at How Traders and Economists Are Using the Julia Programming Language”
IIRC, Standard Chartered achieved this by initially adding Haskell interop to Excel[0] and then moving to a custom GUI solution to replace Excel altogether. [0]- [this video]
Cites chillee · 2018-02 · on “Exploring ReasonML and functional programming”
I mean, if you want a direct quote from Lennart Augustsson, here's a quick transcription of the relevant parts of the relevant video. [this video] > So strictness is really fantastic, I must say. Stack traces work. When something goes wrong, you can say "so you call things from there to there to there". It's the single most time saving thing from Mu compared to Haskell, because things do go wrong from now and then, and it's so great to know exactly what went wrong... And strict languages have what I call resource composition. So if you understand the complexity of 2 parts you can stick them together and nothing weird happens. They add up. That's not true in lazy languages. And debugging, it's sen
Cites foldr · 2023-05 · on “Haskell in Production: Standard Chartered”
> their own dialect of Haskell called Mu. [emphasis mine] >Mu has a strict runtime, which makes program performance easier to analyse and predict – but prevents us from just copy-pasting some Haskell libraries that rely crucially on lazy evaluation. [emphasis mine] If Mu were an entirely different language then you wouldn't be able to copy-paste any Haskell libraries. See also e.g. here: [LINK] , [this video]