Subject-oriented programming: a critique of pure objects

Object-Oriented technology is often described in terms of an interwoven troika of themes: encapsulation, polymorphism, and inheritance. But these themes are firmly tied with the concept of identity. If object-oriented technology is to be successfully scaled from the development of independent applications to development of integrated suites of applications, it must relax its emphasis on the objecf. The technology must recognize more directly that a multiplicity of subjective views delocalizes the concept of object, and must emphasize more the binding concept of identity to tie them together. This paper explores this shift to a style of objectoriented technology that emphasizes the subjective views: Subject-Oriented Programming.

[1]  Brad J. Cox,et al.  Object-oriented programming ; an evolutionary approach , 1986 .

[2]  Michael R. Genesereth,et al.  Logical foundations of artificial intelligence , 1987 .

[3]  Naftaly H. Minsky,et al.  A law-based approach to object-oriented programming , 1987, OOPSLA '87.

[4]  William R. Cook,et al.  A denotational semantics of inheritance , 1989 .

[5]  Ralph E. Johnson,et al.  Surveying current research in object-oriented design , 1990, CACM.

[6]  Ian M. Holland,et al.  Contracts: specifying behavioral compositions in object-oriented systems , 1990, OOPSLA/ECOOP '90.

[7]  Steven P. Reiss,et al.  Connecting tools using message passing in the Field environment , 1990, IEEE Software.

[8]  Harold Ossher,et al.  Support for change in RPDE 3 , 1990 .

[9]  Joel E. Richardson,et al.  Aspects: extending objects to support multiple, independent roles , 1991, SIGMOD '91.

[10]  Gilad Bracha,et al.  Modularity meets inheritance , 1992, Proceedings of the 1992 International Conference on Computer Languages.

[11]  William R. Cook,et al.  Interfaces and specifications for the Smalltalk-80 collection classes , 1992, OOPSLA.

[12]  David Garlan,et al.  Using tool abstraction to compose systems , 1992, Computer.

[13]  Harold Ossher,et al.  Combination of inheritance hierarchies , 1992, OOPSLA '92.

[14]  Harold Ossher,et al.  Integrating coarse-grained and fine-grained tool integration , 1992, [1992] Proceedings of the Fifth International Workshop on Computer-Aided Software Engineering.