Thomas Würthinger, Danilo Ansaloni, Walter Binder, Christian Wimmer, Hanspeter Mössenböck: Safe and atomic run-time code evolution for Java and its application to dynamic AOP. OOPSLA 2011: 825-844