Meta-programming composers in second-generation component systems

Component systems require flexible composition of components. In contrast to current systems which only support a fixed set of composition mechanisms, future systems should provide a composition language in which users can define their own specific composers. For an object-oriented setting, we argue that this will be possible by meta-programming the class-graph.

[1]  Mary Shaw,et al.  Abstractions for Software Architecture and Tools to Support Them , 1995, IEEE Trans. Software Eng..

[2]  Jens Palsberg,et al.  Evolution of object behavior using context relations , 1996, SIGSOFT '96.

[3]  Linda G. DeMichiel An introduction to CLOS , 1993 .

[4]  Uwe Aßmann,et al.  Cosy Compiler Phase Embedding with the CoSy Compiler Model , 1994, CC.

[5]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[6]  David Notkin,et al.  Reconciling environment integration and software evolution , 1992, TSEM.

[7]  Gilad Bracha,et al.  The programming language jigsaw: mixins, modularity and multiple inheritance , 1992 .

[8]  David Garlan,et al.  Architectural Mismatch: Why Reuse Is So Hard , 1995, IEEE Softw..

[9]  Uwe Aßmann On Edge Addition Rewrite Systems and their Relevance to Program Analysis , 1994, TAGT.

[10]  Dorothea Blostein,et al.  Issues in the Practical Use of Graph Rewriting , 1994, TAGT.

[11]  R. Lathe Phd by thesis , 1988, Nature.

[12]  Walter Mann,et al.  Correction to "Specification and Analysis of System Architecture Using Rapide" , 1995, IEEE Trans. Software Eng..

[13]  Nicholas Carriero,et al.  How to write parallel programs: a guide to the perplexed , 1989, CSUR.

[14]  Ciaran Mchale,et al.  Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritan , 1994 .

[15]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[16]  Wolf Zimmermann,et al.  On the design of reliable libraries , 1995 .

[17]  Louis Marie Johannes Bergmans,et al.  Composing Concurrent Objects , 1994 .

[18]  James E. Rumbaugh,et al.  Object-Oriented Modelling and Design , 1991 .

[19]  Laurent Dami,et al.  Functions, records and compatibility in the lN calculus , 1995 .

[20]  Wolfgang Weck,et al.  Inheritance Using Contracts & Object Composition , 1997, ECOOP Workshops.

[21]  Letizia Tanca,et al.  What you Always Wanted to Know About Datalog (And Never Dared to Ask) , 1989, IEEE Trans. Knowl. Data Eng..

[22]  Naranker Dulay,et al.  Structuring parallel and distributed programs , 1993, Softw. Eng. J..

[23]  Seán Baker,et al.  Scheduling Predicates , 1991, Object-Based Concurrent Computing.

[24]  Oscar Nierstrasz,et al.  Requirements for a Composition Language , 1994, ECOOP Workshop.

[25]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[26]  James M. Purtilo,et al.  A pattern-based object-linking mechanism for component-based software development environments , 1996, J. Syst. Softw..

[27]  Oscar Nierstrasz Research topics in software composition , 1995, LMO.

[28]  David Garlan,et al.  A Formal Approach to Software Architectures , 1992, IFIP Congress.

[29]  Jan Bosch,et al.  Adapting Object-Oriented Components , 1997, ECOOP Workshops.

[30]  Oscar Nierstrasz,et al.  Research directions in software composition , 1995, CSUR.

[31]  Walter Zimmer,et al.  Frameworks und Entwurfsmuster , 1997 .

[32]  Karl J. Lieberherr,et al.  Adaptive object-oriented programming using graph-based customization , 1994, CACM.

[33]  Andreas Paepcke,et al.  Open Implementations and Metaobject Protocols , 1994 .

[34]  Keith Brian Gallagher,et al.  Using Program Slicing in Software Maintenance , 1991, IEEE Trans. Software Eng..

[35]  Rodney Farrow Automatic generation of fixed-point-finding evaluators for circular, but well-defined, attribute grammars , 1986, SIGPLAN '86.

[36]  Wolf Zimmermann,et al.  Eine Methode zur Konstruktion robuster Klassenhierarchien , 1997, Informatik Forschung und Entwicklung.

[37]  Marilyn Stelzner,et al.  Teaching object-oriented programming with the KEE system , 1987, OOPSLA 1987.

[38]  Judith Bishop,et al.  Connectors in configuration programming languages: are they necessary? , 1996, Proceedings of International Conference on Configurable Distributed Systems.

[39]  Robert J. Allen A formal approach to software architecture , 1997 .

[40]  Mary Shaw,et al.  An Introduction to Software Architecture , 1993, Advances in Software Engineering and Knowledge Engineering.

[41]  Lodewijk Bergmans,et al.  An Object-Oriented Language-Database Integration Model: The Composition-Filters Approach , 1992, ECOOP.

[42]  Oscar Nierstrasz,et al.  Formalizing Composable Software Systems — A Research Agenda , 1997 .

[43]  John M. Vlissides,et al.  Automatic Code Generation from Design Patterns , 1996, IBM Syst. J..

[44]  Theo D'Hondt,et al.  Nested Mixin-Methods in Agora , 1993, ECOOP.

[45]  Leon J. Osterweil,et al.  A mechanism for environment integration , 1990, TOPL.

[46]  Dirk Riehle,et al.  The Event Notification Pattern - Integrating Implicit Invocation with Object-Orientation , 1996, Theory Pract. Object Syst..