On Fri, Feb 3, 2012 at 10:04 AM, Guido van Rossum <gu...@python.org> wrote:
> On Thu, Feb 2, 2012 at 3:41 PM, Nick Coghlan <ncogh...@gmail.com> wrote:
>> On Fri, Feb 3, 2012 at 9:32 AM, Yury Selivanov <yselivanov...@gmail.com> 
>> wrote:
>>> In my opinion using Ellipsis is just wrong.  It is completely
>>> non-obvious not only to a beginner, but even to an experienced
>>> python developer.  Writing 'raise Something() from None'
>>> looks less suspicious, but still strange.
>>
>> Beginners will never even see it (unless they're printing out
>> __cause__ explicitly for some unknown reason). Experienced devs can go
>> read language reference or PEP 409 for the rationale (that's one of
>> the reasons we have a PEP process).
>
> I somehow have a feeling that Yury misread the PEP (or maybe my +1) as
> saying that the syntax for suppressing the context would be "raise
> <exception> from Ellipsis". That's not the case, it's "from None".

Oh right, that objection makes more sense.

FWIW, I expect the implementation will *allow* "raise exc from
Ellipsis" as an odd synonym for "raise exc". I'd want to allow
"exc.__cause__ = Ellipsis" to reset an exception with a previously set
__cause__ back to the default state, at which point the synonym
follows from the semantics of "raise X from Y" as syntactic sugar for
"_exc = X; _exc.__cause__ = Y; raise _exc"

Cheers,
Nick.

-- 
Nick Coghlan   |   ncogh...@gmail.com   |   Brisbane, Australia
_______________________________________________
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

Reply via email to