On Mon, Aug 23, 2010 at 9:20 AM, Travis Oliphant <[email protected]> wrote: > On Aug 22, 2010, at 4:36 PM, Nathaniel Smith wrote: >> Question 2: Am I missing something, or does the ufunc API make this >> impossible? The problem is that a "PyUFuncGenericFunction" doesn't >> have any way to find the dtypes of the arrays that it's working on. >> All of the PyArray_ArrFuncs functions take a pointer to the underlying >> ndarray as an argument, so that when working with a string or void >> array, you can find the actual dtype and figure out (e.g.) the size of >> the objects involved. But ufunc inner loops don't get that, so I guess >> it's just impossible to define a ufunc over variable-sized data, or >> data that you need to be able to see the dtype metadata to interpret? > > Yes, currently that is correct. Variable data-types don't work in ufuncs > for some subtle reasons. But, the changes that allow date-times to work also > fix (or will fix) this problem as a side-effect. > > The necessary changes to ufuncs have not been made, yet, however. They are > planned. And, yes, this would allow ufuncs to be used for string equality > testing, etc.
Okay, thanks. It sounds like I'll need to accomplish what I want in some other way for now, then, but if I get some surplus time somehow then maybe I'll take a crack at the "proper" solution :-). -- Nathaniel _______________________________________________ NumPy-Discussion mailing list [email protected] http://mail.scipy.org/mailman/listinfo/numpy-discussion
