> Interestingly this was proposed independently here:

Wow apologies for missing the entire thread about it and the noise.


On Sun, Apr 26, 2020 at 11:19 PM Joshua Wilson <josh.craig.wil...@gmail.com>
wrote:

> To try and add some more data points to the conversation:
>
> > Maybe we can go for a bit more distant name like "numpy.annotations" or
> whatever.
>
> Interestingly this was proposed independently here:
>
> https://github.com/numpy/numpy-stubs/pull/66#issuecomment-619131274
>
> Related to that, Ralf was opposed to numpy.typing because it would
> shadow a stdlib module name:
>
> https://github.com/numpy/numpy-stubs/pull/66#issuecomment-619123629
>
> But, types is _also_ a stdlib module name. Maybe the above points give
> some extra weight to "numpy.annotations"?
>
> > Unless we anticipate adding a long list of type aliases (more than the
> three suggested so far)
>
> While working on some types in SciPy here:
>
> https://github.com/scipy/scipy/pull/11936#discussion_r415280894
>
> we ran into the issue of typing things that are "integer types" or
> "floating types". For the time being we just inlined a definition like
> Union[float, np.floating], but conceivably we would want to unify
> those definitions somewhere instead of redefining them in every
> project. (Note that existing types like SupportsInt etc. were not what
> we wanted.) This perhaps suggests that the ultimate number of type
> aliases might be larger than we initially thought.
>
> On Sun, Apr 26, 2020 at 6:25 AM Ilhan Polat <ilhanpo...@gmail.com> wrote:
> >
> > I agree that parking all these in a secondary namespace sounds a better
> option, can't say that I feel for the word "typing" though. There are
> already too many type, dtype, ctypeslib etc. Maybe we can go for a bit more
> distant name like "numpy.annotations" or whatever.
> >
> > On Sat, Apr 25, 2020 at 8:51 AM Kevin Sheppard <
> kevin.k.shepp...@gmail.com> wrote:
> >>
> >> Typing is for library developers more than end users. I would also
> worry that putting it into the top level might discourage other typing
> classes since it is more difficult to add to the top level than to a lower
> level module. np.typing seems very clear to me.
> >>
> >> On Sat, Apr 25, 2020, 07:41 Stephan Hoyer <sho...@gmail.com> wrote:
> >>>
> >>>
> >>>
> >>> On Fri, Apr 24, 2020 at 11:31 AM Sebastian Berg <
> sebast...@sipsolutions.net> wrote:
> >>>>
> >>>> On Fri, 2020-04-24 at 11:10 -0700, Stefan van der Walt wrote:
> >>>> > On Fri, Apr 24, 2020, at 08:45, Joshua Wilson wrote:
> >>>> > > But, Stephan pointed out that it might be confusing to users for
> >>>> > > objects to only exist at typing time, so we came around to the
> >>>> > > question of whether people are open to the idea of including the
> >>>> > > type
> >>>> > > aliases in NumPy itself. Ralf's concrete proposal was to make a
> >>>> > > module
> >>>> > > numpy.types (or maybe numpy.typing) to hold the aliases so that
> >>>> > > they
> >>>> > > don't pollute the top-level namespace. The module would initially
> >>>> > > contain the types
> >>>> >
> >>>> > That sounds very sensible.  Having types available with NumPy should
> >>>> > also encourage their use, especially if we can add some
> documentation
> >>>> > around it.
> >>>>
> >>>> I agree, I might have a small tendency for `numpy.types` if we ever
> >>>> find any usage other than direct typing that may be the better name?
> >>>
> >>>
> >>> Unless we anticipate adding a long list of type aliases (more than the
> three suggested so far), I would lean towards adding ArrayLike to the top
> level NumPy namespace as np.ArrayLike.
> >>>
> >>> Type annotations are becoming an increasingly core part of modern
> Python code. We should make it easy to appropriately type check functions
> that act on NumPy arrays, and a top level np.ArrayLike is definitely more
> convenient than np.types.ArrayLike.
> >>>
> >>>> Out of curiousity, I guess `ArrayLike` would be an ABC that a
> >>>> downstream project can register with?
> >>>
> >>>
> >>> ArrayLike will be a typing Protocol, automatically recognizing
> attributes like __array__ to indicate that something can be cast to an
> array.
> >>>
> >>>>
> >>>>
> >>>> - Sebastian
> >>>>
> >>>>
> >>>> >
> >>>> > Stéfan
> >>>> > _______________________________________________
> >>>> > 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
> >>>
> >>> _______________________________________________
> >>> 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
> >
> > _______________________________________________
> > 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
>
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@python.org
https://mail.python.org/mailman/listinfo/numpy-discussion

Reply via email to