Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Delete extra_ops.py, replace with specialized files with more informative names #959

Open
jessegrabowski opened this issue Aug 4, 2024 · 0 comments

Comments

@jessegrabowski
Copy link
Member

jessegrabowski commented Aug 4, 2024

Description

One might be indexing.py or index_tricks.py. That could hold anything related to generating indices or masks (including the new _delta and _iota functions introduced in #722.

There could also be a file called makers.py to hold ops like pt.linspace that make a useful tensor. pt.arange kind of straddles between an index and a tensor used in actual computation, so we could have a big debate about where it could go!

Other themes from stuff in extra ops:

  • cumulative ops -- these should probably be in basic? Or a file for ops that operate on axes (cum, diff, unique)
  • sorting related (sort, searchsorted, binsort) could be in a sort.py
  • Several functions related to broadcasting -- broadcasting.py?
  • Shape related - ravel, unravel, squeeze
  • Fill diag/off-diag sort of falls under the umbrella of indexing if you think about it. But it probably belongs wherever Alloc is defined?
  • Real grab-bag functions: CpuContiguous (is this used anywhere?), Bartlett (windowing function -- is this a refugee from the deleted signal.py?)

Needs some thought, obviously these are just some ideas to start a discussion.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant