the advantage with this, of course, is that setup, teardown, and standard
responses to / recovery from exceptions is encapsulated in one place.


On Mon, Jul 13, 2009 at 7:51 PM, Yarko Tymciurak <yark...@gmail.com> wrote:

> If you want to setup  / tear-down, use with;
>
> so, if a is an instance of a class,  Aclass:
>
> with Aclass() as a:
>     b(a)
>     a.member_b()
>
> # now Aclass object is freed, and any cleanup or passed on exceptions which
> were raised and not handled are here.
>
>
> On Mon, Jul 13, 2009 at 7:36 PM, mdipierro <mdipie...@cs.depaul.edu>wrote:
>
>>
>> Say I do
>>
>> with a:
>>    b()
>>
>> Perhaps I am mistaken but I do not see a way for b to refer to a. Say
>> a contains a counter. I would like b() to increment that counter. How
>> do I do it without explicitly passing a to b?
>>
>> Massimo
>>
>> On Jul 13, 7:24 pm, Yarko Tymciurak <yark...@gmail.com> wrote:
>> > Re: Proposed syntax -  I might agree; it is just a request for syntax (I
>> to
>> > don't see the motivation, other than - as Joe says - sytactic sugar;)
>> >
>> > Re:  with statement - I think it has uses, and I can see immediately one
>> > place I would put it in, and could probably find a few more places where
>> it
>> > would be of good use.
>> >
>> > On Mon, Jul 13, 2009 at 7:15 PM, mdipierro <mdipie...@cs.depaul.edu>
>> wrote:
>> >
>> > > I repeat. I do not see how it would be possible to implement the
>> > > proposed syntax without major changes in the definition of the helpers
>> > > and that would be slow when compared with the current implementation.
>> > > Perhaps I am wrong.
>> >
>> > > Whether or not this is a good idea, if I am wrong, I would like to see
>> > > a patch that implements this for the DIV helper.
>> >
>> > > Massimo
>> >
>> > > On Jul 13, 7:07 pm, Yarko Tymciurak <yark...@gmail.com> wrote:
>> > > > I think you are both missing important point:
>> >
>> > > > classes which support context would be able to be used in "with"
>> > > contexts";
>> > > > Nothing would be more complex or slower - you'd only use it to make
>> > > things
>> > > > cleaner (move code into class _enter_() and _exit_() methods, which
>> would
>> > > > only get called (I presume) on with use anyway...  If you have the
>> code
>> > > in
>> > > > one place instead of scattered, there is nothing slower or more
>> complex -
>> > > to
>> > > > the contrary.
>> >
>> > > > I would agree with you that this could get overused in places (e.g.
>> if it
>> > > > were used as "syntactic sugar") - but that is a different story.
>> >
>> > > > cvs reader and writer - I had trouble (had to "hack" a fix) with
>> this in
>> > > the
>> > > > registration system;  I never provided a patch, because could not
>> see a
>> > > > good, clean way to decouple application setup from gluon --- THIS is
>> a
>> > > way
>> > > > to do that.
>> >
>> > > > I'm pretty sure if I looked, I'd find a few (not many maybe, but a
>> few)
>> > > > places this would be a good idea, solve existing problems.
>> >
>> > > > I think both of you need to just consider this a little more
>> carefully,
>> > > > that's all...
>> >
>> > > > - Yarko
>> >
>> > > > On Mon, Jul 13, 2009 at 7:00 PM, mdipierro <mdipie...@cs.depaul.edu
>> >
>> > > wrote:
>> >
>> > > > > I agree with Joe. It require making object context dependent whoch
>> > > > > would make things unnecessarily more complex and slower.
>> >
>> > > > > On Jul 13, 6:42 pm, Joe  Barnhart <joe.barnh...@gmail.com> wrote:
>> > > > > > I see no benefit to using PEP343 just to provide syntactic sugar
>> for
>> > > > > > this purpose.  There is no REASON to use the "with" statement
>> because
>> > > > > > we're not doing anything with exception handling here.  It's
>> only
>> > > > > > being used to create an input format that looks prettier to some
>> > > eyes.
>> >
>> > > > > > Am I missing something??
>> >
>> > > > > > On Jul 13, 2:40 pm, Yarko Tymciurak <yark...@gmail.com> wrote:
>> >
>> > > > > > > There are 2 interesting aspects from Luis's  blogger post:
>> >
>> > > > > > > - to use with, classes need to consider contexts;
>> > > > > > > - the (to me, at least) interesting example of ASP.NET's
>> xmlwriter
>> > > > > class
>> > > > > > > (generating SVG dynamically) is... .NET specific;  I'm off
>> busy
>> > > looking
>> > > > > for
>> > > > > > > a python portable idiom to use in place of his last example...
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py Web Framework" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to