Open Access

A Lua-based AOP infrastructure

  • Nélio Cacho1,
  • Thaís Batista1 and
  • Fabrício Fernandes1
Journal of the Brazilian Computer Society11:BF03192379


In this paper we describe an aspect-oriented infrastructure to handle dynamic AOP based on the Lua language. This infrastructure is composed of AspectLua, a Lua extension that allows the declaration of aspects, and a meta-object protocol, LuaMOP, that unifies the introspective and reflective mechanisms provided by Lua. Aspects are defined in isolation using AspectLua and then they are weaved through LuaMOP. An important feature of AspectLua is to allow the association of aspects with undeclared elements of the application code (anticipated join points). Furthermore, it combines a range of features to make AOP easier and powerful.


MOP Reflection AOP Dynamic AOP Lua Antecipated Join Points