63 citations found. Retrieving documents...
Y. Smaragdakis, D. Batory, Implementing Layered Designs with Mixin Layers, 12th European Conference on Object-Oriented Programming, (ECOOP '98), july 1998.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

A Nominal Theory of Objects with Dependent Types - Odersky, Cremet, Röckl, Zenger (2002)   (5 citations)  (Correct)

....whereas virtual or abstract types are present in BETA [31] as well as more recently in gbeta [19] Rune [42] and Scala [33] An essential ingredient of these systems are objects with type members. There is currently much work that explores the uses of this concept in object oriented programming [38,40,20,36]. But its type theoretic foundations are just beginning to be investigated. As is the case for modules, dependent types are a promising candidate for a foundation of objects with type members. Dependent products can be used to represent functors in SML module systems as well as classes in object ....

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. Lecture Notes in Computer Science, 1445, 1998.


Proof of Correctness of a Transparent Design Abstraction - Laura Dillon Kurt   (Correct)

....outlined a proof that the model correctly implements an SOS, and argued that the model is transparent with respect to the code. Given the increasing popularity of design methods that encourage collaboration based design (e.g. design patterns [8] aspectoriented programming [10] and mixin layers [14]) we expect there will be a growing need for reasoning techniques that are transparent with regard to the role structure of these collaborations. Such proofs typically rely on mathematical abstractions of source code. Because the connection between the actual code and the model is ultimately ....

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In Proc. of the 12th European Conference on Object-oriented Programming, 1998.


An Enhanced Role Model for Alleviating the Role-Binding Anomaly - Lee, Bae (2002)   (1 citation)  (Correct)

.... referred to as collaboration based designs or collaboration based developments [2,3] such as contracts [4] subject oriented programming [5] role components [6] roles [7 10] aspectoriented programming [11] adaptive programming [12] adaptive plug and play components [2] mixin layers [13], and pluggable composite adapters [14] support the decomposition and composition of an application system through their own first class modeling entity for encapsulating collaboration. Among various collaboration based development techniques, the role model adopts the most general and direct ....

....within a framework are fixed. In other words, gluing and the collaborative protocol cannot be dealt with separately. This drawback makes it impossible to selectively bind a core object to a specific role instance rather than to affect all instances of the role within the role system. Mixin layers [13] improve the way role components can be implemented using the C template proposed by VanHilst and Notkin [6] by solving the scalability problem identified by VanHilst and Notkin [27] In Table I, several representative pieces of work related to collaboration based design, including software ....

Smaragdakis Y, Batory D. Implementing layered designs with mixin layers. Proceedings of the European Conference for Object-Oriented Programming,Brussels,Belgium(Lecture Notes in Computer Science, vol. 1445). Springer, 1998.


Modular Mixin-Based Inheritance for Application Frameworks - Duggan, Techaubol (2001)   (3 citations)  (Correct)

....types of the interpreter function can be represented as mixins. Each interpreter fragment can then be represented as a mixin module containing both class and mixin definitions. Mixin module combination coalesces the definitions in a type safe manner. Related to the latter work, the JTS project [4, 35] provides support for reusing abstract syntax trees and operations on those trees, with an emphasis on hygienic syntactic ma238 nipulations of ASTs. An interesting point of comparison is that the JTS project recognizes the importance of mixinbased inheritance, at the granularity of collections ....

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In European Conference on Object-Oriented Programming, 1998.


Implementing Known Concepts in AspectJ - Schmidmeier, Hanenberg, Unland (2003)   (Correct)

....multiple inheritance. The intention of mixins is, that they should not be instantiated on their own. Instead, they should depict reusable pieces of code that can be added to other classes [ 15] The benefit of mixins is widely known for example for building layered object oriented design [14] or static roles objects [16] Figure 1 shows the usage of a mixin class: the mixin consists of two method definitions m2. The method body of the mixin s body might already refer to other classes expected from the inheritance hierarchy the mixin is applied to. For example method refers ....

.... method is declared within the interface (so the application of introductions to an interface feels more like the traditional F bounded polymorphism [3] The problem with conflicting AspectJ mixins is, that this does not permit to build complex hierarchies of mixin layers as for example used in [14]: it is not possible that an introduced method overrides the implementation of another method (it doesn t matter if introduced or not) In that way, to be able to implement mixin layers in AspectJ, the mixins have to be carefully preplanned. Hence, the benefit for such mixins much more limited ....

Smaragdakis, Y.; Batory, D.: Implementing Layered Designs with Mixin Layers, Proceedings of 12th European Conference on Object-Oriented Programming (ECOOP), LNCS, 1445, Springer-Verlag. 1998


Aspect-Oriented Programming with Jiazzi - Mcdirmid, Hsieh (2003)   (1 citation)  (Correct)

....with its emphasis on aspect weaving. Open classes in Jiazzi are based on mixins [1] where extensibility is gained with classes whose super classes are initially unfixed. Role model components [23] use individual mixins to modularize the many roles an object is involved in. Mixin layers [22] improve on this by using a layer of mixins to modularize a collaboration between many objects. Java Layers [4, 3] adds mixin layers to the Java language. The sibling class pattern [3] enabled by Java Layers provides the same functionality as Jiazzi s open packages. Delegation layers [21] ....

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In Proc. of ECOOP, pages 550--570, June 1998.


DADO: Enhancing middleware to support cross-cutting.. - Wohlstadter, Jackson, .. (2003)   (6 citations)  (Correct)

....the capability of broad changes to programs. Reflection [23] provided means of introducing crosscutting changes at run time in languages such as Smalltalk. Compile time [5, 32] reflection in C and Java has been developed and extended to load time in Java using byte code editing [6] Mixin layers [28] also provide a way of adding features to methods in several different classes simultaneously. Implicit Context [36] is a method for separating extraneous embedded knowledge (EEK) or cross cutting knowledge) from the design of a program, and re weaving it back in later. Monads and monad ....

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. Lecture Notes in Computer Science, 1445:550--??, 1998.


Mixin Layers: An Object-Oriented Implementation Technique.. - Smaragdakis, Batory   (15 citations)  (Correct)

....Holland [Hol92] for this example are, in fact, general enough to be applicable to a directed graph. If, however, a more efficient, specialized for undirected graphs algorithm was used (as is, for instance, possible for the Cycle Checking operation) the change would yield incorrect results. Sma99, SB98b, BG98] discuss in detail the issue of ensuring that collaborations are actually interchangeable. Although we have focussed on a single application that supports all three graph operations, it is easy to see how variants of this application could be created (e.g. by omitting some operations or ....

....CLOS (and other reflective languages) We can encode mixin layers in CLOS [KRB91] and other reflective systems) by simulating their main elements using reflection (classes as first class entities) Due to lack of space, we elide the implementation specifics. A discussion can be found in [SB98b] and [Sma99] CLOS mixin layers are not semantically equivalent to C mixin layers (for instance, there is no default class data hiding: class members are by default accessible from other code in CLOS) Nevertheless, the two versions of mixin layers are just different flavors of the same idea. ....

Y. Smaragdakis and D. Batory, "Implementing Layered Designs with Mixin Layers", ECOOP 1998.


Object Teams: Improving Modularity for Crosscutting Collaborations - Herrmann (2002)   (8 citations)  (Correct)

....for modules that are larger than classes have emerged. Besides components as understood in the context of standard component models such as CCM and EJB, which are out of the scope of this paper, several other module proposals have been made for supporting the so called collaboration based design [5, 23, 19, 3, 20, 14, 4, 17]. Approaches of this kind build on the insight that the design of object oriented applications can be organized along two dimensions: structural abstractions (object types) and collaborations in which these abstractions are involved (see Fig. 1 for illustration) In general, an abstraction is ....

....module constructs fully satisfies our needs. By means of an example scenario, we illustrate the features that are needed and indicate what is missing in the current proposals for collaboration modules. We discuss only the three most advanced approaches to collaboration based design: mixin layers [20], family polymorphism [4] and delegation layers [17] This can be done without loss of generality, since the chosen approaches essentially subsume the other approaches to collaboration based design. In response to the shortcomings that we identify, we propose a new kind of collaboration module, ....

[Article contains additional citation context not shown here]

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In Proc. of ECOOP'98, LNCS 1445, pp. 550--570. Springer--Verlag, 1998.


Object Teams: Improving Modularity for Crosscutting Collaborations - Herrmann (2002)   (8 citations)  (Correct)

....emerged over the last decade. In addition to components as defined by standard component models such as the CORBA Component Model and Enterprise Java Beans, which are beyond the scope of this paper, several other module proposals have been made for supporting so called collaboration based design [4, 19, 16, 2, 17, 12, 3, 15]. Approaches of this kind build on the insight that the design of object oriented applications can be organized in two dimensions: using structural abstractions (object types) and collaborations in which these abstractions are involved (see Fig. 1) Generally speaking, an object is involved in ....

....is quite a dubious concept in such a setting. For Object Teams, this is a non issue because comparing a role and a base object is meaningless: both exist in disjoint worlds. mixin layers dynamic view connectors pluggable composite adapters family polymorphism delegation reference [17] [6] 13] 3] 15] collaboration refinement declarative method binding confined objects object based inheritance dynamic composition multiple instance binding lifting lowering In contrast to some notable ....

[Article contains additional citation context not shown here]

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In Proc. of ECOOP'98, number 1445 in LNCS, pages 550--570. Springer Verlag, 1998.


DADO: Enhancing middleware to support cross-cutting.. - Wohlstadter, Jackson, .. (2003)   (6 citations)  (Correct)

....the capability of broad changes to programs. Reflection [23] provided means of introducing crosscutting changes at run time in languages such as Smalltalk. Compile time [5, 32] reflection in C and Java has been developed and extended to load time in Java using byte code editing [6] Mixin layers [28] also provide a way of adding features to methods in several different classes simultaneously. Implicit Context [36] is a method for separating extraneous embedded knowledge (EEK) or cross cutting knowledge) from the design of a program, and re weaving it back in later. Monads and monad ....

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. Lecture Notes in Computer Science, 1445:550--??, 1998.


Integrating Independent Components With On-Demand.. - Mezini, Ostermann (2002)   (11 citations)  (Correct)

....of classes. With CBD classes are decomposed into the roles they play in the di#erent collabo rations. The idea is nicely visualized by a two dimensional matrix with the classes as the column indexes and collaborations in which these classes are involved as the row indexes. Mixin Layers [26] and delegation layers [23] are two representatives of approaches to CBD. Both approaches provide concepts for composing and decomposing a collaboration into layers, such that a particular collaboration variant can be obtained by composing the required layers. Mixin layers use a nested variant of ....

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin-layers. In Proceedings of ECOOP '98, pages 550--570, 1998.


Run-time Support for Aspects in Distributed System.. - Truyen, Joosen, Verbaeten (2002)   (1 citation)  (Correct)

....reconfiguring the composition of architectural strata) In traditional object oriented programming languages, there is no practical implementation of stratified architectures, due to the inability of an individual object or class to morph itself over the different strata. However, mixin layers [22] (and probably a lot of other existing AOSD methods) can be used to implement this concept. Stratified architectures can also be implemented by means of Lasagne, with the important difference that architectural strata can be composed at run time. Variation points in the component framework are ....

Y. Smaragdakis and D. Batory, "Implementing Layered Designs with Mixin Layers", in Proceedings of the ECOOP'98 Conference, July 1998, Springer-Verlag LNCS 1445, pp. 550-570.


Programming Languages for Reusable Software Components - Flatt (1999)   (10 citations)  (Correct)

....the resulting code. Since the patterns are not part of the language, however, each programmer is responsible for maintaining or understanding a particular coding discipline. Krishnamurthi et al. 46] explore technology for migrating patterns to language constructs. ffl Smaragdakis and Batory [75] investigate the implementation of mixin layers for applying a family of cooperating mixins en masse to a family of classes. Mixin layers scale the mixin approach for components to larger systems. Smaragdakis and Batory rely on C templates to implement both mixins and mixin layers, but units ....

Smaragdakis, Y. and D. Batory. Implementing layered designs with mixin layers. In Proc. European Conference on Object-Oriented Programming, pages 550--570, 1998.


Achieving Extensibility Through Product-Lines and.. - Batory, Johnson.. (2001)   (19 citations)  Self-citation (Batory)   (Correct)

....other distinct chains. These are indicated by the shaded classes of Figure 3c) The reason is that these classes contain all of the features or aspects that were added by higher classes in the chain. These higher classes simply represent intermediate derivations of the bottom class [4] 17][36]. A consequence of instantiating the bottom most class of a chain is that refinement relationships take precedence over typical subclassing relationships. That is, if class A in 4. There are other kinds of refinements beyond those discussed in this paper. An example is an optimizing refinement, ....

....class X implements F class A . class B extends TEqn.A . class C extends TEqn.A . class D . Components like that encapsulate refinements are expressed as mixins classes whose superclass is specified via a parameter. A representation of is a mixin layer [17][36][37] where s parameter s can be instantiated by any component that is of type F: class Y F s extends s implements F class A extends s.A . class B extends s.B . class D extends s.D . class E . In the parlance of the model of Section 2.2.2, x is a value of type ....

[Article contains additional citation context not shown here]

Y. Smaragdakis and D. Batory, "Implementing Layered Designs with Mixin Layers", ECOOP 1998.


Feature-Based Product Derivation: Composing Features - Jansen, Smedinga, van Gurp..   (Correct)

No context found.

Y. Smaragdakis, D. Batory, Implementing Layered Designs with Mixin Layers, 12th European Conference on Object-Oriented Programming, (ECOOP '98), july 1998.


Formal Models for Aspect-Oriented Software Development - Skipper (2004)   (Correct)

No context found.

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In E. Jul, editor, ECOOP '98---Object-Oriented Programming, volume 1445 of Lecture Notes in Computer Science, pages 550--570. Springer, 1998.


Variability Management with Feature-Oriented Programming and.. - Mezini, Ostermann (2004)   (9 citations)  (Correct)

No context found.

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin-layers. In Proceedings of ECOOP '98, LNCS 1445, pages 550--570, 1998.


Implementing Reusable Collaborations with Delegation Layers - Ostermann (2001)   (2 citations)  (Correct)

No context found.

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin-layers. In Proceedings of ECOOP '98, pages 550--570, 1998.


Views and Concerns and Interrelationships - Lessons Learned from .. - Herrmann (2002)   (Correct)

No context found.

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In Proc. of ECOOP'98, number 1445 in LNCS, pages 550--570. Springer Verlag, 1998. 254 304


MoMi - A Calculus for Mobile Mixins - Bettini, Bono, Venneri (2004)   (2 citations)  (Correct)

No context found.

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In Proc. ECOOP '98, pages 550--570, 1998.


A Nominal Theory of Objects with Dependent Types - Odersky, Cremet, Röckl, Zenger (2002)   (5 citations)  (Correct)

No context found.

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. Lecture Notes in Computer Science, 1445, 1998.


Feature Modeling - Speck, Pulvermüller (2001)   (Correct)

No context found.

Y. Smaragdakis and D. Batory. Implementing Layered Designs with Mixin Layers. In Lecture Notes in Computer Science LNCS 1445, pages 550 - 570, 1998.


MoMi: A Calculus for Mobile Mixins - Bettini, Bono, Venneri (2002)   (2 citations)  (Correct)

No context found.

Y. Smaragdakis and D. Batory. Implementing layered designs with mixin layers. In Proc. ECOOP '98, pages 550--570, 1998.


Towards Object-Oriented KLAIM - Bettini, Bono, Venneri (2001)   (Correct)

No context found.

Smaragdakis, Y. and D. Batory, Implementing layered designs with mixin layers, in: Proc. ECOOP '98, 1998, pp. 550-570.

First 50 documents  Next 50

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC