[Python-Dev] PEP 3148 ready for pronouncement [ACCEPTED]

2010-07-12 Thread Titus von der Malsburg
Hi I learned about the futures PEP only today.  I saw the example on
http://code.google.com/p/pythonfutures/

One thing that worries me is that this approach seems to bypass the
usual exception handling mechanism of Python.  In particular I'm
wondering why you have to do things like:

  if future.exception() is not None:
...

This reminds me a lot of how things are done in C but it's not very
pythonic.  Wouldn't it be possible and nicer to raise the exception --
if there was one inside the asynchronous job -- when the result of the
future is accessed?

  try:
print('%r page is %d bytes' % (url, len(future.result(
  except FutureError:
print('%r generated an exception: %s' % (url, future.exception()))

Best,

  Titus
___
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


Re: [Python-Dev] PEP 3148 ready for pronouncement [ACCEPTED]

2010-07-12 Thread Titus von der Malsburg
On Tue, Jul 13, 2010 at 12:48:35AM +1000, Nick Coghlan wrote:
> On Tue, Jul 13, 2010 at 12:19 AM, Titus von der Malsburg
> That's what actually happens, so you can code it either way

That's great!  None of the examples I found used the pythonic
exception style, that's why I assumed that checking the "return value"
is the only possibility.  Reading the PEP carefully would have helped.
:-)

  Titus
___
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