Nu: Preserving Design Modularity in Object Code

By: Robert Dyer, Harish Narayanappa, and Hridesh Rajan

PDF Download Download Paper

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.

ACM Reference

Dyer, R. et al. 2006. Nu: preserving design modularity in object code. SIGSOFT Softw. Eng. Notes. 31, 6 (2006), 1–2. DOI:https://doi.org/http://doi.acm.org/10.1145/1218776.1218802.

BibTeX Reference

@article{dyer2006nu,
  author = {Robert Dyer and Harish Narayanappa and Hridesh Rajan},
  title = {Nu: preserving design modularity in object code},
  journal = {SIGSOFT Softw. Eng. Notes},
  volume = {31},
  number = {6},
  year = {2006},
  issn = {0163-5948},
  pages = {1--2},
  doi = {http://doi.acm.org/10.1145/1218776.1218802},
  publisher = {ACM},
  address = {New York, NY, USA},
  entrysubtype = {poster},
  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.
  }
}