Classifying is a central activity in object-oriented programming and distinguishes it from procedural programming. Traditional logic, initiated by Aristotle, assigns classification to our first activity in reasoning, whereby we come to know what a thing is. Such a grasp of the thing's whatness is the foundation for all further reasoning about it. This connection between Aristotle's way of classifying and object-oriented programming is sometimes acknowledged, but rarely explored in depth3 We explore this relation more closely and more carefully, in the hope that a better understanding of classification and programming can be gained from a study of philosophy than from many current text books on object-oriented programming. 1 Traditional Logic and Symbolic Logic We will use traditional logic to refer to what was first set down by Aristotle and was developed and taught as the key of the liberal arts during the ensuing two millennia. Symbolic logic will be used to refer to the c...
Derek Rayside, Gerard T. Campbell