[fpc-pascal] a proposal about "with" syntax
Flávio Etrusco
flavio.etrusco at gmail.com
Sun Mar 17 03:37:26 CET 2013
On Sat, Mar 16, 2013 at 10:14 PM, Xiangrong Fang <xrfang at gmail.com> wrote:
>> > I don't know what's make it complex if there are 2 or more subject in
>> > the with?
>>
>> Context. A conflict case the two object were of the same class.
>
>
> Are you saying this case:
>
> with MyClassInstance1 as m, MyClassInstance2 do begin
> m.Property1 := 123;
> Property2 := 456;
> end;
>
> Here you don't know Property2 belongs to which object instance??
No, he's saying that *his hack* using class helper wouldn't cover this
case (two objects in the same 'with' clause).
Daniel, I find this hack as ingenious as atrocious ;-)
But thinking about it a bit, when FPC gets generic methods you can
make this kind of workable!
> (...)
> To summarize, "as" does NOT try to eliminate context ambiguity (also it
> won't make a clear context ambiguous), but provided some convenience when
> needed.
As Sven said this feature has already been requested a few times.
I don't remember whether it was permanently vetoed by FPC developers
or just is in the to-do, but vaguely remember people arguing it's
"un-pascal" because of the local variable/scope - which is
unfortunate, because IMO the 'with' syntax is one of the most
abominable un-pascal things Borland introduced in the language, and
*forcing* the AS syntax (but probably with some other keyword like
ALIAS) would make it much more palatable.
Best regards,
Flávio
More information about the fpc-pascal
mailing list