>because the "taking away" approach at abstraction also abstracts out some important performance considerations.
a software engineering abstraction which doesn't have clear performance facet is just a bad software engineering abstraction (while, for example, it may be a really good math abstraction).