numexpr
numexpr copied to clipboard
Add documentation on Wiki for developers
numexpr
is a great project, and in order for it to grow in 2016+, it will require PRs from other developers, since the original authors are busy (but thankfully still reviewing accepting PRs).
I would like to help add functionality to numexpr
, and at this point it is very challenging to get up to speed. For example, if I wanted to add nansum
, the best thing to do right now is to find a commit where similar functionality was added, study it, and try to replicate the changes.
A simple guide to adding functions would be immediately useful. In the short term, there are two kinds of functions that people want to add:
- element wise
- reducers (like sum across axis)
If they had a template on how to go about adding these, we would see more PRs. Hopefully, it would reduce issues like https://github.com/pydata/numexpr/issues/163, https://github.com/pydata/numexpr/issues/87, https://github.com/pydata/numexpr/issues/120 .
Longer term, it would be good to get a sense of how the compiler works, and what to do if one wanted to extend it with new types, or other functionality. E.g. it would be really cool if I could use numba to write a n element-wise function, and then pass it to numexpr (which would automagically create an opcode, and use it).
Bottom line is that if people think they can add to the project with 4 hours or work (say a Saturday afternoon) or less of effort, they're more likely to do so. By providing some documentation, the maintainers of this project can empower others to help contribute.
I think you are completely right. Will see if I have time for doing this, although lately I barely have bandwidth enough for all my open source projects. But I encourage anybody to beat me doing this ;)
Thank you. I understand the time commitment thing.. I am currently trying to hack on bottleneck, and trying to add a new function to it. Once that is done, I will help add some element-wise functions using your documentation.
Message to comment on stale issues. If none provided, will not mark issues stale