I've read in a number of places discussions on whether Mathematics is a branch of Computer Science and vice-versa (see here for example)
Having a background in both, I know that the Computer Sciences formally developed something called Object Orientation (i.e. the object oriented paradigm), which is a very powerful tool of abstraction in many modern programming languages, and which I use regularly.
On the other hand I see that mathematics has been using "object orientation," or abstraction since mathematics began. One example I like to think of is the Calculus. First principles deal with limits and the definition of a derivative, but once we get beyond this, the technical details of limits is somewhat lost in the abstraction, although of course the limiting processes are still there we just choose to abstract them out of sight unless needed. Moreover, there are other Calculi, such as the geometric calculus, and other types of abstraction such as the Umbral calculus, etc.
In computer programming, the OO paradigm deals with functions and (data) structures, and defines how objects are allowed to interact (private, protected, public, etc.)
In Mathematics, the OO paradigm seems to deal with abstraction of concepts and notation via mathematical logic.
I just wondered what opinion was regarding the view of object orientation as an abstraction of Mathematical abstraction and certain elements of Computer Science (such as programming)?
Additional information: Object orientation (see for example here) is a paradigm in computer science that is often employed for software engineering, used in programming, and potentially any type of relational analysis. One example framework is the Unified Modelling Language (UML) (see here).
The OO paradigm allows for inheritance (see here) which I think best relates to my above question. This property allows a new object to inherit properties of a given object and to extend that object. Often as we build "on top" of other objects and extend their functionality, we hide the details of the lower level work going on under the bonnet so to speak.
This relates to my analogy of the Newtonian Calculus above "hiding" the limiting processes and extending the "objects" we are working with.