[Numpy-discussion] broadcasting for randint

G Young gfyoung17 at gmail.com
Sat May 21 21:15:00 EDT 2016


Hi,

I have had a PR <https://github.com/numpy/numpy/pull/6938> open for quite
some time now that allows arguments to broadcast in *randint*.  While the
functionality is fully in-place and very robust, the obstacle at this point
is the implementation.

When the *dtype* parameter was added to *randint* (see here
<https://github.com/numpy/numpy/pull/6910>), a big issue with the
implementation was that it created so much duplicate code that it would be
a huge maintenance nightmare.  However, this was dismissed in the original
PR message because it was believed that template-ing would be trivial,
which seemed reasonable at the time.

When I added broadcasting, I introduced a template system to the code that
dramatically cut down on the duplication.  However, the obstacle has been
whether or not this template system is too *ad hoc* to be merged into the
library.  Implementing a template in Cython was not considered sufficient
and is in fact very tricky to do, and unfortunately, I have not received
any constructive suggestions from maintainers about how to proceed, so I'm
opening this up to the mailing to see whether or not there are better
alternatives to what I did, whether this should be merged as it, or whether
this should be tabled until a better template can be found.

Thanks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20160522/64df80e6/attachment.html>


More information about the NumPy-Discussion mailing list