Es gibt doch ein paar AOP Frameworks für Delphi.
Habe es noch nicht selbst getestet, aber sowas sollte mit aspektorientierter Programmierung durchaus möglich sein.
Man kann sich einen Logging Aspekt schreiben, der z.B. auf Feldänderungen reagiert und diesen Aspekt dann per Attribut zu einer zu überwachenden Klasse hinzufügen. Das wäre dann auch sehr universell nutzbar.
Das wär mitm Panzer auf Hasenjagd gehen. Außerdem lassen die AOP Frameworks sich meist nur auf virtuelle Methoden anwenden. Was darüber hinaus geht wäre Manipulation am Bytecode. Ja, es soll Leute geben, die sowas praktizieren, aber das wäre hier eher weniger zielführend.