Michael Achenbach, Klaus Ostermann. Growing a Dynamic Aspect Language in Ruby. In Proceedings of the 2010 AOSD Workshop on Domain-Specific Aspect Languages. ACM Press, Rennes and Saint Malo, France, 2010.
We present an approach to embed constructs for aspect-oriented programming with dynamic deployment in Ruby using metaprogramming. The AOP constructs developed in this way facilitate dynamic instantiation of aspects and deployment with expressive scoping strategies. Domain-specific extensions of these constructs make our approach particularly well-suited for domains that require more complex, invasive, or dynamic instrumentation beyond AspectJ-like AOP languages.