Referenz
Indirekter Zugriff auf einen Wert — statt des Werts selbst hat man einen Zeiger oder ein Handle. Erlaubt mehreren Variablen, sich dasselbe zugrunde liegende Objekt zu teilen.
Unterscheidet sich vom Pointer: Eine Referenz ist meist "nicht null" und wird automatisch dereferenziert (Java, C#, JS, Python, Rust). Ein Pointer (C, C++) kann NULL sein und muss explizit dereferenziert werden. Pass-by-reference vs. pass-by-value beschreibt, was beim Übergeben an eine Funktion passiert. Rusts Borrow-Checker kontrolliert Referenzen strikt (eine veränderliche XOR beliebig viele unveränderliche). "Reference counting" ist eine Form von Garbage Collection (Swift, CPython).