It just dawned on me. The issue with inheritance is cyclic dependencies. The parent class might depend on methods overridden in the child, and the child methods might depend on the parent. This cannot evolve gracefully
Any modular or incremental programming will have issues with unobvious remote behavior. The solution: 1- well-defined interfaces (contracts, types, laws) between the modular or incremental entities. 2- ability to search and browse the entities relevant to a computation.
Read my blog!