"with" should be deprecated with extreme prejudice
Bill Baxter
wbaxter at gmail.com
Mon May 18 13:26:59 PDT 2009
On Mon, May 18, 2009 at 1:14 PM, Andrei Alexandrescu
<SeeWebsiteForEmail at erdani.org> wrote:
> Nick Sabalausky wrote:
>>
>> "Leandro Lucarella" <llucax at gmail.com> wrote in message
>> news:20090518141908.GB9277 at burns.springfield.home...
>>>
>>> bearophile, el 18 de mayo a las 04:33 me escribiste:
>>>>
>>>> Andrei, I agree that "with" is dangerous when it shadows outer names
>>>> (Python designers have not added a "with" because of this).
>>>
>>> They did, but with different semantics =)
>>> It's used for RAII (I guess you already know that, but maybe other people
>>> don't).
>>>
>>
>> You mean like C#'s "using"?
>
> What a God awful feature. Honestly, "what were they sinking about?" People
> who explained that C# is cool - please explain this one.
Looks like
using(Foo x = new Foo()) {
// do stuff
}
It's basically equiv of
{
auto x = new Foo();
scope(exit) foo.Dispose;
// do stuff
}
So it saves a little typing but is capable of less. scope(exit) is way cooler.
Python has a similar feature to C#'s using. In Python it's called
"with". http://effbot.org/zone/python-with-statement.htm
--bb
More information about the Digitalmars-d
mailing list