Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

Subject-oriented composition rules

Published: 17 October 1995 Publication History

Abstract

Subject-oriented programming supports composition of object-oriented programs or program fragments called subjects. This paper presents an approach to the composition rules used to specify composition details. Rules can be generic, allowing different subrules to be "plugged into" higher-level rules, and they include a means of specifying exceptions to general rules. We give definitions of a number of useful, generic rules, including merge and override, as a first step towards a generally-useful composition rule library. We also outline an object-oriented framework for implementing rules, which we are currently building as part of our support for subject-oriented programming in C++.

References

[1]
Gilad Bracha. The Programming Language Jigsaw: Mixins, Modularity and Multiple Inheritance. PhD thesis, University of Utah, 1992.]]
[2]
Gilad Bracha and Gary Lindstrom. Modularity meets inheritance. In Proceedings qf the 1992 International Conference on Computer Languages, pages 282-290, Oakland, April 1992. IEEE.]]
[3]
William Cook. A Denotational Semantics qf Inheritance. PhD thesis, Brown Univerisity, 1989.]]
[4]
Margaret A. Ellis and Bjarne Stroustrup. The Annotated C+ + Reference Manual. Addison-Wesley, 1990.]]
[5]
Ira R. Forman, Scott Danforth, and Hari Madduri. Composition of before/after metaclasses in SOM. In Proceedings of the Conference on Object-Oriented Programming: Systems, Languages, and Applications, pages 427-439, Portland, Oregon, October 1994. ACM.]]
[6]
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison- Wesley, 1994.]]
[7]
William Harrison and Harold Ossher. Subjectoriented programming (a critique of pure objects). In Proceedings of rhe Conference on Object-Oriented Programming: Systems, Languages, and Applications, pages 41 l-428, Washington, D.C., September 1993. ACM.]]
[8]
Jo A. Lawless and Molly M. Miller. Understanding CLOS. Digital Press, 1991.]]
[9]
David A. Moon. Object-oriented programming with Flavors. In Proceedings of the Conference on Object- Oriented Programming: Systems, Languages, and Applications, pages 1-8. Portland, September 1986. ACM.]]
[10]
L. R. Nackman and J. J. Barton. Base-class compositions with multiple derivation and virtual bases. In I994 Usenix: C+ + Conference, pages 57-72, Berkeley, Ca., 1994. Usenix Association.]]
[11]
Harold Ossher and William Harrison. Combination of inheritance hierarchies. In Proceedings of the Conference on Object-Oriented Programming: Systems, Languages, and Applications, pages 25-40, Vancouver, October 1992. ACM.]]
[12]
Harold Ossher, William Harrison, Frank Budinsky, and Ian Simmonds. Subject-oriented programming: Supporting decentralized development of objects. In Proceedings of the 7th IBM Corzference on Ohject- Oriented Technology, Santa Clara, CA, July 1994. IBM.]]
[13]
Harold Ossher, Matthew Kaplan, Alexander Katz, William Harrison, and Vincent Kruskal. Specifying subject-oriented composition. Submitted for publication., 1995.]]
[14]
Daniel M. Yellin and Robert E. Strom. Interfaces, protocols, and the semi-automatic construction of software adaptors. In Proceedings of Ihe Conference on Object-Oriented Programming: Systems, Languages, and Applications, pages 176-l 90, Portland, Oregon, October 1994. ACM.]]

Cited By

View all
  • (2019)Shapp: Workload Management System for Massive Distributed CalculationsHandbuch Methoden der Politikwissenschaft10.1007/978-3-030-19807-7_31(318-329)Online publication date: 8-May-2019
  • (2010)Controlling dynamic module composition through an extensible meta-level APIACM SIGPLAN Notices10.1145/1899661.186964145:12(81-96)Online publication date: 18-Oct-2010
  • (2010)Controlling dynamic module composition through an extensible meta-level APIProceedings of the 6th symposium on Dynamic languages10.1145/1869631.1869641(81-96)Online publication date: 18-Oct-2010
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 17 October 1995
Published in SIGPLAN Volume 30, Issue 10

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)91
  • Downloads (Last 6 weeks)28
Reflects downloads up to 21 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2019)Shapp: Workload Management System for Massive Distributed CalculationsHandbuch Methoden der Politikwissenschaft10.1007/978-3-030-19807-7_31(318-329)Online publication date: 8-May-2019
  • (2010)Controlling dynamic module composition through an extensible meta-level APIACM SIGPLAN Notices10.1145/1899661.186964145:12(81-96)Online publication date: 18-Oct-2010
  • (2010)Controlling dynamic module composition through an extensible meta-level APIProceedings of the 6th symposium on Dynamic languages10.1145/1869631.1869641(81-96)Online publication date: 18-Oct-2010
  • (2006)Modeling aspect mechanismsProceedings of the 28th international conference on Software engineering10.1145/1134285.1134316(212-221)Online publication date: 28-May-2006
  • (2004)Reflective compositionCompanion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications10.1145/1028664.1028761(224-225)Online publication date: 23-Oct-2004
  • (2004)JACSoftware—Practice & Experience10.1002/spe.60534:12(1119-1148)Online publication date: 1-Oct-2004
  • (2003)Employment Of Fuzzy Logic In Feature Diagrams To Model Variability In Software FamiliesJournal of Integrated Design & Process Science10.5555/1255154.12551597:3(79-94)Online publication date: 1-Aug-2003
  • (2002)Enterprise frameworksSoftware—Practice & Experience10.1002/spe.46032:8(801-831)Online publication date: 10-Jul-2002
  • (1997)Tiling design patterns—a case study using the interpreter patternACM SIGPLAN Notices10.1145/263700.26373732:10(206-217)Online publication date: 9-Oct-1997
  • (1997)Tiling design patterns—a case study using the interpreter patternProceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications10.1145/263698.263737(206-217)Online publication date: 9-Oct-1997
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media