read that as:
"beyond the well-established idea, from Haskell, that side effects are troublesome and need to be explicitly modelled and thought about."
It's a good idea, and Facebook actually does something like this for their spam filtering rules: https://engineering.fb.com/2015/06/26/security/fighting-spam...
Y = λf.(λx.f (x x)) (λx.f (x x))
Even more beautiful than the y combinator
That's a bit of a strange statement. The Y combinator is an expression in λ calculus. It's like saying French is even more beautiful than the phrase "nouveau départ".
Simon Peyton Jones would beg to differ. :)
And Go has succeeded despite these condescending diatribes on how a language needs to have a Hindley-Milner type system with ADTs and type classes to be useful. Go made me truly realize how insufferable the PLT community is, and why they are so absolutely lost when it comes to creating successful languages.
In under a decade Go swept up entire markets with a simple, down to earth language you can learn in a day and keep in your head. It optimized for the masses and the common cases and has absolutely eaten the lunch of these languages with lauded type systems that takes several courses in formal logic to even get started with.
They aren't lost—they're just more interested in actually good ideas than in popularity. Popular languages must appeal to all kinds of programmers with varying backgrounds, so they are heavily constrained. Your argument is basically that mathematicians don't know what they're doing because their most advanced theories aren't used by mechanical engineers.
But I really wish FP advocates would learn more about paradigms like OO before criticising them. It's too often levelled against the strawman of industry, imperative, pseudo-oo. Take this:
Components in functional programming are essentially just data types and functions, and these functions work without mutable state, he said.
I could make the same arguments for doing "late architecture" with objects:
Components in object-oriented programming are essentially just objects and messages, and these messages work without mutable state, he said.