Good points made , Joel. I share the same feelings as you do.
'for' has disappeared and 'if’ and 'switch' are rare in my current projects. Code is composable, testable, predictable and a joy to read. I tried OOP a bit some months ago, it was so unnatural in JS.
However, working with ReactJS, I can’t avoid 'this’. React should move from class based API to HOC/mixins based API or something alike and more 'functional’. Class is an eyesore. As a rule, I never inherit a react component after extending the React.Component class.
What do you suggest?