Should there be discussion of typing (pep-484) or abstract base classes in
this nep?  Are there any requirements on the result returned by
__array_function__?

On Mon, Jun 4, 2018, 2:20 AM Stephan Hoyer <sho...@gmail.com> wrote:

>
> On Sun, Jun 3, 2018 at 9:54 PM Hameer Abbasi <einstein.edi...@gmail.com>
> wrote:
>
>> Mixed return values of NotImplementedButCoercible and NotImplemented
>> would still result in TypeError, and there would be no second chances for
>> overloads.
>>
>>
>> I would like to differ with you here: It can be quite useful to have
>> second chances for overloads. Think ``np.func(list, custom_array))``: If
>> second rounds did not exist, custom_array would need to have a list of
>> coercible types (which is not nice IMO).
>>
>
> Even if we did this, we would still want to preserve the equivalence
> between:
> 1. Returning NotImplementedButCoercible from __array_ufunc__ or
> __array_function__, and
> 2. Not implementing __array_ufunc__ or __array_function__ at all.
>
> Changing __array_ufunc__ to do multiple rounds of checks could indeed be
> useful in some cases, and you're right that it would not change existing
> behavior (in these cases we currently raise TypeError). But I'd rather
> leave that for a separate discussion, because it's orthogonal to our
> proposal here for __array_function__.
>
> (Personally, I don't think it would be worth the additional complexity.)
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@python.org
> https://mail.python.org/mailman/listinfo/numpy-discussion
>
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@python.org
https://mail.python.org/mailman/listinfo/numpy-discussion

Reply via email to