<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; "><div style="word-wrap:break-word"><div>My three proposals: </div><div><br></div><div><span style="white-space:pre-wrap">   </span>* do nothing and leave things as is </div><div><br></div><div><span style="white-space:pre-wrap">       </span>* add a global flag that turns off masked array support by default but otherwise leaves things unchanged (I'm still unclear how this would work exactly)</div>
<div><br></div><div><span style="white-space:pre-wrap"> </span>* move Mark's "masked ndarray objects" into a new fundamental type (ndmasked), leaving the actual ndarray type unchanged.  The array_interface keeps the masked array notions and the ufuncs keep the ability to handle arrays like ndmasked.    Ideally, <a href="http://numpy.ma/" target="_blank">numpy.ma</a> would be changed to use ndmasked objects as their core. </div>
<div><br></div></div></blockquote><div><br>The <a href="http://numpy.ma/">numpy.ma</a> is unmaintained and I don't see that changing anytime soon. As you know, I would prefer 1), but 2) is a good compromise and the infra structure for such a flag could be useful for other things, although like yourself I'm not sure how it would be implemented. I don't understand your proposal for 3), but from the description I don't see that it buys anything.<br></div></div></blockquote><div><br></div><div>That is a bit strong to call <a href="http://numpy.ma">numpy.ma</a> unmaintained.    I don't consider it that way.    Are there a lot of tickets for it that are unaddressed?   Is it broken?   I know it gets a lot of use in the wild and so I don't think NumPy users would be happy to here it is considered unmaintained by NumPy developers.     </div><div><br></div><div>I'm looking forward to more details of Mark's proposal for #2. </div><div><br></div><div>The proposal for #3 is quite simple and I think it is also a good compromise between removing the masked array entirely from the core NumPy object and leaving things as is in master.  It keeps the functionality (but in a separate object) much like <a href="http://numpy.ma">numpy.ma</a> is a separate object.   Basically it buys not forcing *all* NumPy users (on the C-API level) to now deal with a masked array.    I know this push is a feature that is part of Mark's intention (as it pushes downstream libraries to think about missing data at a fundamental level).    But, I think this is too big of a change to put in a 1.X release.   The internal array-model used by NumPy is used quite extensively in downstream libraries as a *concept*.  Many people have enhanced this model with a separate mask array for various reasons, and Mark's current use of mask does not satisfy all those use-cases.   I don't see how we can justify changing the NumPy 1.X memory model under these circumstances. </div><div><br></div><div>This is the sort of change that in my mind is a NumPy 2.0 kind of change where downstream users will be looking for possible array-model changes.  </div><div><br></div><div>-Travis</div><div><br></div><div><br></div><div><br></div><div><br></div><br><blockquote type="cite"><div class="gmail_quote"><div>
 <br></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="word-wrap:break-word"><div></div><div>For the record, I'm currently in favor of the third proposal.   Feel free to comment on these proposals (or provide your own). </div>
<div><br></div></div></blockquote><div><br>Chuck <br></div></div>
_______________________________________________<br>NumPy-Discussion mailing list<br><a href="mailto:NumPy-Discussion@scipy.org">NumPy-Discussion@scipy.org</a><br>http://mail.scipy.org/mailman/listinfo/numpy-discussion<br></blockquote></div><br></body></html>