|
|
|
|
|
by pmarreck
3650 days ago
|
|
<opinion> OOP+FP is the wrong approach, and I'm putting that kindly. (This is also why I nixed Clojure, btw.) Having worked on large OO codebases, dependency hell, side effects, runaway state, and mutable data bugs (not to mention concurrency bugs) eventually become a serious problem, and out of the box, OOP does nothing to discourage these things (but functional languages do). As soon as you give developers access to "impurity" along with their "purity," you start earnestly down the path to massive technical debt. You could code the most functional Scala code ever, but as soon as you incorporate any library at all, you are right back to "zero concurrency guarantees" square 1. What I'm getting at is that OOP+FP is, ultimately, simply OOP, providing none of the guarantees and encouraging none of the best practices that purely FP langs do. It's like the worst of both worlds lol </opinion> |
|
"OOP" implies none of things you are worried about and Scala is a great example of that.
I wished people tried the language before making assumptions based on emotions that are not supported by reality.