Hey all, 

After reading all the discussion around masked arrays and getting input from as 
many people as possible, it is clear that there is still disagreement about 
what to do, but there have been some fruitful discussions that ensued. 

This isn't really new as there was significant disagreement about what to do 
when the masked array code was initially checked in to master.   So, in order 
to move forward, Mark and I are going to work together with whomever else is 
willing to help with an effort that is in the spirit of my third proposal but 
has a few adjustments.  

The idea will be fleshed out in more detail as it progresses, but the basic 
concept is to create an (experimental) ndmasked object in NumPy 1.7 and leave 
the actual ndarray object unchanged.   While the details need to be worked out 
here,  a goal is to have the C-API work with both ndmasked arrays and 
arrayobjects (possibly by defining a base-class C-level structure that both 
ndarrays inherit from).     This might also be a good way for Dag to experiment 
with his ideas as well but that is not an explicit goal. 

One way this could work, for example is to have PyArrayObject * be the 
base-class array (essentially the same C-structure we have now with a HASMASK 
flag). Then, the ndmasked object could inherit from PyArrayObject * as well but 
add more members to the C-structure.     I think this is the easiest thing to 
do and requires the least amount of code-change.      It is also possible to 
define an abstract base-class PyArrayObject * that both ndarray and ndmasked 
inherit from.     That way ndarray and ndmasked are siblings even though the 
ndarray would essentially *be* the PyArrayObject * --- just with a different 
type-hierarchy on the python side. 

This work will take some time and, therefore, I don't expect 1.7 to be released 
prior to SciPy Austin with an end of June target date.   The timing will 
largely depend on what time is available from people interested in resolving 
the situation.   Mark and I will have some availability for this work in June 
but not a great deal (about 2 man-weeks total between us).    If there are 
others who can step in and help, it will help accelerate the process.  

Best regards,

-Travis



_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to