Hi Philip,
das sieht interessant aus!
Allerdings verstehe ich generell die Interfaces (noch) nicht wirklich.
Es wird mit Deiner Lösung jedem Objekt eine Referenzliste hinzugefügt...
Mein Ansatz war eher, dass man normale Objekte verwendet und "der Compiler" auf Wunsch die Referenzen extern verwaltet und ggf. nilt (ohne dass die Objekte eine Referenzliste verwalten müssen).
Meine oben gezeigten Quelltextauszüge machen das ja so (zwar noch etwas ungeschickt und eingeschränkt aber gut funktionsfähig). Die Objekte müssen zur Laufzeit nicht verwalten, von dem sie referenziert werden.
Die Registrierung der Referenz könnte der Compiler vornehmen, sobald eine Objektvariable einer anderen zugewiesen wird.
Dazu könnte eine zentrale Referenzliste verwaltet werden.
Das war eher meine Idee.
Dein Code ist aber beeindruckend (vielleicht verstehe ich den ja irgendwann
)