[Guido van Rossum] > > http://www.python.org/peps/pep-0343.html
[Phillip J. Eby] > Looks great. A few questions/comments: > > * What's the rationale for raising TypeError from close()? Wasn't > RuntimeError discussed previously for that role? (and it's also used by > the with_template example) OTOH, maybe that means we want a > ControlFlowError or some such that can be used for both. I really don't want a new exception for this, since it's just a bug in the generator's code. I could go with RuntimeError here too, but I figured TypeError's meaning in a wider sense applies: the generator doesn't respond appropriately to the throw() call, which is similar to not handling a particular argument (list) correctly. > * The "opening" example under "Generator Decorator" seems to be missing a > try/finally block. Good catch. I've fixed this in the PEP. > * The transaction handler could also be written as: > > @with_template > def transactional(db): > db.begin() > try: > yield db > except: > db.rollback() > else: > db.commit() > > at least, if I understand it correctly. Ah, of course. I've updated the PEP. -- --Guido van Rossum (home page: http://www.python.org/~guido/) _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com