Extending the Groovy Language Using AST Transformations to Monitor Variables and Methods

Conference paper
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 206)


Groovy is a dynamic language based on Java. Groovy enables the development of new operators in order to overcome the language’s own limitations. The extensions to Groovy can be made through Abstract Syntax Tree (AST) Transformations. In this paper, we present two AST Transformations to monitor variables and methods in an AspectJ inspired manner. These transformations make it possible to execute custom closures (lambda expressions) at specific points of the application, enabling the improvement of software development.


Abstract Syntax Tree Groovy Object Oriented Programming Transformations Monitors 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
  2. 2.
    Konig, D., King, P., Laforge, G., Skeet, J.: Groovy in Action, 2nd edn. Manning (2011)Google Scholar
  3. 3.
    Groovy - Compile-time Metaprogramming - AST Transformations,
  4. 4.
    Colyer, A., Clement, A., Harley, G., Webster, M.: Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools, 1st edn. Addison-Wesley Professional (2004)Google Scholar
  5. 5.
    Laddad, R.: AspectJ in Action: Enterprise AOP with Spring, 2nd edn. Manning Publications (2009)Google Scholar
  6. 6.
    Kiczales, G., Lamping, J., Mendhekar, A.: Aspect-oriented programming (June 1997)Google Scholar
  7. 7.
    GContracts – A Programming by Contract Extension for Groovy!

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.Department of Informatics EngineeringUniversity of CoimbraCoimbraPortugal

Personalised recommendations