On Sun, Jun 2, 2019 at 2:21 PM Eric Wieser <wieser.eric+numpy@gmail.com> wrote:
Some of your categories here sound like they might be suitable for ABCs that provide mixin methods, which is something I think Hameer suggested in the past. Perhaps it's worth re-exploring that avenue.

Eric


Indeed, and of course for __array_ufunc__ we moved there a bit already, with `NDArrayOperatorsMixin` [1].
One could certainly similarly have NDShapingMixin that, e.g., relied on `shape`, `reshape`, and `transpose` to implement `ravel`, `swapaxes`, etc. And indeed use those mixins in `ndarray` itself.

For this also having a summary of base functions/methods would be very helpful.
-- Marten