On Thu, Feb 2, 2012 at 4:34 PM, Nick Coghlan <ncogh...@gmail.com> wrote:
> 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"

Sure. But those are all rather obscure cases. Ellipsis reads no less
or more obscure than False when written explicitly. But that doesn't
bother me.

-- 
--Guido van Rossum (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

Reply via email to