As we all know, Plato argued that the objects we see in the world are just instantiations and specializations of abstract template classes. Any given chair is just an instance of the abstract class Chair. The existence of the abstract class is what permits us to identify the chair as a Chair. The very fact that we can talk about chairs, and that we can tell whether an object is a chair or not, means that Chair exists.
Plato also applied this to attributes and relations. For example, the fact that one chair is bigger than another is an instantiation of Bigger. I once questioned a philosophy professor about this. She pointed out that before there were any people, we still tend to think that one star was bigger than another. Therefore, the concept of Bigger must exist independently of people, and therefore it must really exist in some sort of abstract space.
I don’t really believe in any of this, myself. But it is true that we predisposed by nature to see certain types of objects (e.g., faces), and thus we are born with some sort of abstract concepts in our heads. (Plato (or Socrates) of course argued that pretty much everything we know we know from birth (in the Meno dialogue). I don’t believe that, but it seems to be true that we do know some things from birth.)
Anyhow, this is all background for this: does the fact that we naturally carry abstract concepts in our heads mean that object oriented programming is more natural than functional programming? That would be consonant with my earlier arguments about how parallel programming is somehow inimical to our thought processes.
Leave a Reply
You must be logged in to post a comment.