Skip to main content

Virtual Machine Support for Stateful Aspects

  • Conference paper
Objects, Components, Models and Patterns (TOOLS EUROPE 2008)

Part of the book series: Lecture Notes in Business Information Processing ((LNBIP,volume 11))

Included in the following conference series:

Abstract

State Machines are very useful for modeling behavior of reactive systems. Stateful aspects have been proposed as a way to declaratively attach advice to transitions in a State Machine, so that the State Machine structure is seen in the implementation. Vanderperren et al. proposed an extension of the JAsCo Aspect-Oriented Programming Language for stateful aspects. This work proposes a low-overhead stateful aspects mechanism with the same semantics as JAsCo’s, built as an extension of Steamloom, a VM-supported AOP solution. The interface of our mechanism is similar to the aspect interface provided by Steamloom, with minimal augmentation. We provide detailed overhead analysis that highlights the advantages of our implementation.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Allan, C., Augustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhoták, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: Adding Trace Matching with Free Variables to AspectJ. J. SIGPLAN Not 40, 345–364 (2005)

    Article  Google Scholar 

  2. Andrews, T., Curbera, F., et al.: Business Process Execution Language for Web Services Specification (2003), http://www.ibm.com/developerworks/library/ws-bpel/

  3. Arnold, M., Fink, S., Grove, D., Hind, M., Sweeney, P.F.: Adaptive Optimization in the Jalapeño JVM. In: 15th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages & Applications (Addendum), pp. 125–126. ACM Press, New York (2000)

    Chapter  Google Scholar 

  4. Avgustinov, P., Tibble, J., de Moor, O.: Making trace monitors feasible. J. SIGPLAN Not 42, 589–608 (2007)

    Article  Google Scholar 

  5. Bockisch, C., Haupt, M., Mezini, M., Ostermann, K.: Virtual machine support for dynamic join points. In: 3rd International Conference on Aspect-Oriented Software Development, pp. 83–92. ACM Press, New York (2004)

    Chapter  Google Scholar 

  6. Bonér ,J.: AspectWerkz - Dynamic AOP for Java (2003), http://codehaus.org/~jboner/papers/aosd2004_aspectwerkz.pdf

  7. Brichau, J., de Meuter, W., de Volder, K.: Jumping Aspects. In: Workshop on Aspects and Dimensions of Concerns (2000)

    Google Scholar 

  8. Bull, J.M., Smith, L.A., Westhead, M.D., Henty, D.S., Davey, R.A.: A Benchmark Suite for High Performance Java. J. Concurrency: Practice and Experience 12, 375–388 (2000)

    Article  Google Scholar 

  9. Cottenier, T., van den Berg, A., Elrad, T.: Stateful aspects: the case for aspect-oriented modeling. In: 10th international workshop on Aspect-oriented modeling, pp. 7–14. ACM Press, New York (2007)

    Chapter  Google Scholar 

  10. Douence, R., Fradet, P., Südholt, M.: A framework for the detection and resolution of aspect interactions. In: 1st ACM SIGPLAN/SIGSOFT Conference on Generative Programming and Component Engineering, pp. 173–188. Springer, London (2002)

    Chapter  Google Scholar 

  11. Douence, R., Fradet, P., Südholt, M.: Trace-based Aspects. In: Aspect-Oriented Software Development, pp. 201–218. Addison Wesley (2004)

    Google Scholar 

  12. Douence, R., Fradet, P., Südholt, M.: Composition, Reuse and Interaction Analysis of Stateful Aspects. In: 3th International Conference on Aspect-Oriented Software Development, pp. 141–150. ACM, New York (2004)

    Chapter  Google Scholar 

  13. Farías, A., Südholt, M.: On components with explicit protocols satisfying a notion of correctness by construction. In: Distributed Objects and Applications, pp. 995–1012. Springer, London (2002)

    Google Scholar 

  14. Haupt, M.: Virtual Machine Support for Aspect-Oriented Programming Languages. Doctoral Dissertation (2006)

    Google Scholar 

  15. Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An overview of AspectJ. In: 15th European Conference on Object-Oriented Programming, pp. 327–353. Springer, London (2001)

    Google Scholar 

  16. Nicoara, A., Alonso, G.: Dynamic AOP with PROSE. In: CAiSE Workshops, FEUP Edições, Porto, pp. 125–138 (2005)

    Google Scholar 

  17. Phink, Y.: Virtual Machine Support for Stateful Aspects. M.Sc. Thesis, Tel-Aviv University (in preparation, 2008)

    Google Scholar 

  18. Tanenbaum, A.S.: Computer Networks, 4th edn. Prentice Hall Professional Technical Reference (2002)

    Google Scholar 

  19. Vanderperren, W., Suvee, D., Cibran, M.A., De Fraine, B.: Stateful Aspects in JAsCo. In: Software Composition Workshop at the European Joint Conferences on Theory and Practice of Software, Edinburgh, pp. 167–181. Springer, Scotland (2005)

    Google Scholar 

  20. Vasseur, A.: Dynamic AOP and Runtime Weaving for Java - How does AspectWerkz Address It? (2004), http://aspectwerkz.codehaus.org/downloads/papers/aosd2004-daw-aspectwerkz.pdf

  21. Walker, R.J., Viggers, K.: Implementing Protocols via Declarative Event Patterns. J. SIGSOFT Soft. Eng. Notes 29, 159–169 (2004)

    Article  Google Scholar 

  22. Yellin, D., Strom, R.: Protocol Specifications and Component Adaptors. J. ACM Trans. Program. Lang. Syst. 19, 292–333 (1997)

    Article  Google Scholar 

  23. AspectJ, http://www.eclipse.org/aspectj

  24. AspectWerkz, http://aspectwerkz.codehaus.org

  25. CaesarJ, http://caesarj.org

  26. JAsCo, http://ssel.vub.ac.be/jasco

  27. The Jikes Research Virtual Machine, http://jikesrvm.sourceforge.net

  28. PROSE, http://prose.ethz.ch

Download references

Author information

Authors and Affiliations

Authors

Editor information

Richard F. Paige Bertrand Meyer

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Phink, Y., Yehudai, A. (2008). Virtual Machine Support for Stateful Aspects. In: Paige, R.F., Meyer, B. (eds) Objects, Components, Models and Patterns. TOOLS EUROPE 2008. Lecture Notes in Business Information Processing, vol 11. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69824-1_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-69824-1_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-69823-4

  • Online ISBN: 978-3-540-69824-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics