Design Pattern Implementations in Eos

By: Hridesh Rajan

PDF Download Download Paper

Abstract

In earlier work, we showed that the AspectJ notions of aspect and class can be unified in a new module construct that we called the classpect, and that this new model is simpler and able to accommodate a broader set of requirements for modular solutions to complex integration problems. We embodied our unified model in the Eos language design. The main contribution of this paper is a case study, which considers the implementation of the Gang-of-Four (GOF) design patterns \citegamma95a in Eos to analyze the effect of new programming language constructs on these implementations. We also compare these implementations with the AspectJ’s implementation. Our result shows that the Eos implementation showed improvement in 7 out of 23 design patterns, and are no worse in case of other 16 patterns. These improvements were mainly manifested in being able to realize the intent of the design patterns more clearly. The design structures realized in the Eos implementation provide supporting evidence for the potential benefits of the unified model.

ACM Reference

Rajan, H. 2007. Design Pattern Implementations in Eos. PLoP ’07, Conference on Pattern Languages of Programs (Sep. 2007).

BibTeX Reference

@inproceedings{rajan2007design-b,
  author = {Hridesh Rajan},
  title = {Design Pattern Implementations in Eos},
  booktitle = {PLoP '07, Conference on Pattern Languages of Programs},
  location = {Monticello, IL},
  month = {September},
  year = {2007},
  entrysubtype = {conference},
  abstract = {
    In earlier work, we showed that the AspectJ notions of aspect and class can be
    unified in a new module construct that we called the classpect, and that this
    new model is simpler and able to accommodate a broader set of requirements for
    modular solutions to complex integration problems. We embodied our unified
    model in the Eos language design. The main contribution of this paper is a
    case study, which considers the implementation of the Gang-of-Four (GOF)
    design patterns~\cite{gamma95a} in Eos to analyze the effect of new
    programming language constructs on these implementations. We also compare
    these implementations with the AspectJ's implementation. Our result shows that
    the Eos implementation showed improvement in 7 out of 23 design patterns, and
    are no worse in case of other 16 patterns. These improvements were mainly
    manifested in being able to realize the intent of the design patterns more
    clearly. The design structures realized in the Eos implementation provide
    supporting evidence for the potential benefits of the unified model.
  }
}