Abstraction should never introduce more resource usage. Poorly thought out OOPLs have violated this rule for too long. The difference between functional and non-functional requirements is the key. Separation of concerns shows the problem spaces are orthogonal.
"Learn to think" should always outweigh "Learn to code".
#DumbAllOver
#SoftwareEngineering