See more
…r language may seem ‘desirable’ from a naive viewpoint, but will not help in long term maintenance. In other words, value expressiveness over dogma.
The problem isn’t really with object-oriented languages. It’s with classical inheritance, which makes you think in terms of what things are rather than what they do.
You have to define your class taxonomy in advance. The is just about impossible to get right the first time, except for trivial projects.