Right now the array type implements __array__, but just as convenience. This was done back when the package was numpy.array_api.
I'm wondering if we should actually remove this. It isn't part of the array API standard, and could just lead people incorrectly thinking it works. And more notably, it is leading to bugs in array_api_strict itself (like #66) where you can forget to use ._array when passing an array to a NumPy function and it will still work (but maybe not in the same way, if that function also passes the dtype argument for instance).
Right now the array type implements
__array__, but just as convenience. This was done back when the package was numpy.array_api.I'm wondering if we should actually remove this. It isn't part of the array API standard, and could just lead people incorrectly thinking it works. And more notably, it is leading to bugs in array_api_strict itself (like #66) where you can forget to use
._arraywhen passing an array to a NumPy function and it will still work (but maybe not in the same way, if that function also passes thedtypeargument for instance).