Concepedia

Publication | Closed Access

Aspects, Information Hiding and Modularity

15

Citations

4

References

2003

Year

Abstract

Aspect-oriented programming languages such as AspectJ provide a new way to separate out and consolidate code for debugging, profiling, distribution and other tasks that would otherwise become tangled with the main-line computation. Without aspects, this code can be di#cult to understand and maintain. Unfortunately, while aspects purport to provide a new form of modularity, they also defeat the purpose of existing information hiding and modularity mechanisms. We have developed a new aspect-oriented programming language, AspectML, that allows programmers to control information hiding and access to the internals of a module through a simple static type system. Using our mechanisms, programmers can prevent aspects from interfering with local invariants or reading information that should be kept private to a module. Consequently, AspectML is the first aspectoriented language that interoperates safely and e#ectively with rich module systems.

References

YearCitations

Page 1