Do classes help to structure your code? Can namespaces offer the same benefit?
Is inheritance helpful or harmful? What about roles / mixins / traits?
Which problems does the actor model solve? Which ones are better solved by single-threaded concurrency? What about Communicating Sequential Processes?[4]
Do we need encapsulation if we have immutable state?
Does immutability help me write safer multi-threaded code? If so, why?
Which advantages do persistent data structures have? What are the disadvantages?
Is my team more productive in a dynamic programming language or in a language with dependent types? Where do they produce more bugs? How do concepts like type inference, gradual typing, or clojure.specs change that?
Is FP better than OO? I think this is the wrong question to ask. For me the question is: What concepts and ideas help me to write better code? And that answer might very well be :
“classes (no inheritance), SOLID principles, persistent data structures and immutability”