Aristotle and OOP

I like to imagine what would happen if Aristotle were to be transported from ancient Greece to modern times.  I assume that after he adjusted to the changes and settled in, he would reflect on all of the marvels of modern life. I believe he would be pleased with the state of physics, although he would probably bristle at the criticism leveled against his writings.  After all, he didn’t have the benefit of all of the technology that Newton and Einstein had.  I think he would look with fascination and delight at the state of biology and medicine – subjects that occupied much of his efforts.  But I suspect that no aspect of our current times would interest him more than computer science.

Aristotle is, without a doubt, one of the most prolific and influential thinkers of all time.  And perhaps, his crowning achievement is his work on logic and on the characterization of being.  He introduced the systematic study of logic and made it a central part of his philosophy. His imprint is found everywhere in Western thought.

All that said, Aristotle is not an easy read.  Whether that is a consequence of his thought or some facet of how is translated remains a mystery to me.  But the examples he employs in his work on logic in his Organon are hard to crack. Since I think he genuinely wanted his students to understand what he was driving at, if he were here today he would rework the Organon within the context of object-oriented programming.

Defining classes and providing them with attributes (member data and functions) would be a natural laboratory to demonstrate a large number of the philosophical concepts Aristotle birthed into Western thought.  The concepts of categories and the study of being and the ideas of essentials and accidentals have very clean distinctions in object-oriented programming.

It is my intention to explore these connections in the coming posts.  For now I will simply sign-off with the modest observation that every time someone plays a video game they are learning a little about how Aristotle thought.

Leave a Comment