Aristotle on Substance (09-Oct-2003)

I can't help but be struck by the way that Aristotle's discussion on substance has so many parallels with the "Java" computer language. In Java, an object is a data structure that represents a physical or logical entity relating to the problem which the program is trying to solve. Here are some characteristics of Java objects:

So the Java language has analogues for Aristotle's primary substance (individual object instances), predicates (object properties), and secondary and tertiary substance (classes and parent classes). It might seem then, that Aristotle would approve of Java.

However, before any object can be instantiated in a Java program, the rules to describe the properties and capabilities of its class (and also the ancestral classes) must have already been set down. Before instantiating the "Nick Hudson" object, I must have available the definition of a "Person" class. The "Person" class acts as a kind of cookie-cutter to create each Person object. The process of instantiating each new object in Java seems more in accordance with Plato's ideas than Aristotle's.

It seems to me that Aristotle's point of view, while it may be a convincing description of how the world appears to us (what the finished program looks like when it's working), doesn't go far enough to explain how things came to be this way (where did the class definitions come from?)