Compile-time versus run-time AOP