I don’t think it’s good form for experienced Haskell programmers to dunk on OOP, but it’s at least marginally more palatable than seeing people with little to no experience in a functional language advocating for procedural programming instead.
OOP was invented for a reason! To save us from the mess that existed before it!
I’ve worked with so much JavaScript code that was written with no concept of encapsulation or modular interfaces. Hell, even the “pattern matching” proposal for the language supports neither algebraic data types nor encapsulated objects. It’s one ball of mud after another.
I live and breathe TypeScript. It alone will not save you either.