You can actually use the with-do in functions ... :twisted:

[pascal]with TObject.Create do begin
func_param1 := 'abc';
AOwner := Form1;
end;[/pascal]

In C/C++ (AFAIK) you cannot do:[pascal]// Read until INI-File style comments.
repeat
inc(i);
until (inStr[i+1] in [#13,#10,#0,';']);[/pascal]

In fact, I even coded a semi-complete 3 byte (YES!) variant system for a variant stack for scripting! In four hours!!

I work in ANSI-C for CGI scripting for a web interface as a part of my work. It's ugly, instable, requires work-a-rounds, and really hard to keep up to date without breaking anything. I could rewrite our whole interface in Pascal -- ignoring the time to get adjusted to Pascal CGI -- in less than half the time it has taken them to add pages and maintain the present beast.