skip to main content
article

Nu: preserving design modularity in object code

Published: 01 November 2006 Publication History

Abstract

For a number of reasons, such as to generate object code that is compliant with the existing virtual machines (VM), current compilers for aspect-oriented languages sacrifice design modularity when transforming source to object code by losing textual locality and intermingling concerns in the object code. Sacrificing design modularity has significant costs, especially in terms of the speed of incremental compilation. We present an intermediate language design that preserves aspect-oriented design modularity in Java byte code. We briefly describe our extensions to the Sun Hotspot VM to support the new intermediate language design.

References

[1]
O.-J. Dahl and K. Nygaard. Simula: an algol-based simulation language. Commun. ACM, 9(9):671--678, 1966.
[2]
E. W. Dijkstra. Notes on Structured Programming, circulated privately, April 1970.
[3]
R. Dyer, H. Narayanappa, Y. Hanna, and H. Rajan. Nu: Improving aspect oriented incremental compilation. In Submission.
[4]
R. Dyer and H. Rajan. Modular compilation strategies for aspect-oriented constructs. In Submission.
[5]
G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. G. Griswold. An overview of AspectJ. In ECOOP '01: 15th European Conference on Object-Oriented Programming, pages 327--353, Budapest, Hungary, June 2001.
[6]
G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP), Finland, June 1997. Springer-Verlag.
[7]
N. Lesiecki. Applying AspectJ to J2EE application development. In AOSD '05: Proceedings of the 4th international conference on Aspect-oriented software development, New York, NY, USA, 2005. ACM Press.
[8]
Nu web site. http://www.cs.iastate.edu/~nu.
[9]
H. Rajan, R. Dyer, Y. Hanna, and H. Narayanappa. Preserving separation of concerns through compilation. In L. Bergmans, J. Brichau, and E. Ernst, editors, Software Engineering Properties of Languages and Aspect Technologies (SPLAT 06), A workshop affiliated with AOSD 2006, March 2006.
[10]
H. Rajan and K. J. Sullivan. Classpects: unifying aspect- and object-oriented language design. In ICSE '05: Proceedings of the 27th international conference on Software engineering, pages 59--68, New York, NY, USA, 2005. ACM Press.
[11]
Z. Shao and A. W. Appel. Smartest recompilation. In POPL '93: Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 439--450, New York, NY, USA, 1993. ACM Press.

Cited By

View all
  • (2008)Virtual machines and intermediate languages for emerging modularization mechanismsCompanion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications10.1145/1449814.1449887(865-868)Online publication date: 19-Oct-2008

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGSOFT Software Engineering Notes
ACM SIGSOFT Software Engineering Notes  Volume 31, Issue 6
November 2006
182 pages
ISSN:0163-5948
DOI:10.1145/1218776
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 November 2006
Published in SIGSOFT Volume 31, Issue 6

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 18 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2008)Virtual machines and intermediate languages for emerging modularization mechanismsCompanion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications10.1145/1449814.1449887(865-868)Online publication date: 19-Oct-2008

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media