Hi Lluís, On Thu, Nov 3, 2011 at 7:28 AM, Lluís <[email protected]> wrote: > Well, maybe it's too low level, but I'd rather decouple the two concepts into > two orthogonal properties that can be composed: > > * Destructiveness: whether the previous data value is lost whenever you > assign a > "special" value. > > * Propagation: whether any of these "special" values is propagated or just > skipped when performing computations. > > I think we can all agree on the definition of these two properties (where > bit-patters are destructive and masks are non-destructive), so I'd say that > the > first discussion is establishing whether to expose them as separate properties > or just expose specific combinations of them: > > * MISSING: destructive + propagating > * IGNORED: non-destructive + non-propagating
Thanks, that's an interesting idea that I'd forgotten about. I added a link to your message to the "proposals" section, and to the list of proposed solutions in point (3). I'm tempted to respond in more depth, but I'm worried that if we start digging into specific proposals like this right now then we'll start going in circles again -- that's why I'm trying to establish some common ground on what our goals are, so we have more of a basis for comparing different ideas. So obviously your suggestion of breaking things down into finer-grained orthogonal features has merits in terms of simplicity, elegance, etc. Before we get into those, though, I want to ask: do you feel that the extra ability to have values that are destructive+non-propagating and non-destructive+propagating is a major *practical* benefit, or are you more motivated by the simplicity and elegance, and the extra flexibility is just something kind of cool that we'd get for free? Or put another way, do you think that the MISSING and IGNORED concepts are adequate to cover practical use cases, or do you have an example where what's really wanted is say non-destructive + propagating? I can see how it would work, but I don't think I'd ever use it, so I'm curious... -- Nathaniel _______________________________________________ NumPy-Discussion mailing list [email protected] http://mail.scipy.org/mailman/listinfo/numpy-discussion
