Ich würde bei Pascal jetzt nicht unbedingt solche Variablendeklarationen mitten im Code einführen,
aber ein
with x := xyz do
wäre auch was Nettes und würde nicht der Syntax des Pascal wiedersprechen, bzw. nicht mit der aktuellen Syntax kollidieren.
Delphi-Quellcode:
var
xyz: TComponent;
begin
...
with x := xyz do begin
ShowMessage(x.Name);
end;
end;
X wäre eine temporäre "lokale" Variable, mit dem Typen (CompileTime), welcher dort zu zugewiesen wird, innerhalb dieses Blocks.
Hier würde mann quasi den Namespace "x" definieren und würde nicht den Namespace der Methode kompromitieren ("xyz" als neuen "automatischen" Namespace).
Automatische Variablen legt Delphi ja auch so öfters schon an.
* Für Rückgaben von Funktionen, welche aber nicht angenommen werden, wie z.B.
trim(s)
ohne links eine Variable.
* Und für Zwischenergebnisse von Berechnungen, sowie bei verschachtelten Methoden/Propery
x.abc.def
, also das Result von abc.
* ...