On the syllogistic structure of object-oriented programming

  • Authors:
  • Derek Rayside;Kostas Kontogiannis

  • Affiliations:
  • Electrical & Computer Engineering, University of Waterloo, Waterloo, Canada;Electrical & Computer Engineering, University of Waterloo, Waterloo, Canada

  • Venue:
  • ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

Recent works by Sowa and by Rayside & Campbell demonstrate that there is a strong connection between object-oriented programming and the logical formalism of the syllogism, first set down by Aristotle in the Prior Analytics. In this paper, we develop an understanding of polymorphic method invocations in terms of the syllogism, and apply this understanding to the design of a novel editor for object-oriented programs. This editor is able to display a polymorphic call graph, which is a substantially more difficult problem than displaying a non-polymorphic call graph. We also explore the design space of program analyses related to the syllogism, and find that this space includes Unique Name, Class Hierarchy Analysis, Class Hierarchy Slicing, Class Hierarchy Specialization, and Rapid Type Analysis.