In defense of complicated programming languages
viralinstruction.com
viralinstruction.com
The first is extensible by other programmers working in other systems, and the second is not. You can only add dog.jump(weight) if you own the Dog source code. Inheritance may grant you a way to add behaviour, or it may not. No-one can stop you from writing jump(weight) in your own module.
We all work on numbers this way without friction: - max(2,3), mean([1,2,3,4]), etc.