[Numpy-discussion] Should arr.diagonal() return a copy or a view? (1.7 compatibility issue)

Pauli Virtanen pav at iki.fi
Fri May 11 15:18:14 EDT 2012


11.05.2012 17:54, Frédéric Bastien kirjoitti:
> In Theano we use a view, but that is not relevant as it is the
> compiler that tell what is inplace. So this is invisible to the user.
> 
> What about a parameter to diagonal() that default to return a view not
> writable as you said. The user can then choose what it want and this
> don't break the inferface.
[clip]

Agreed, it seems this is the appropriate way to go on here
`diagonal(copy=True)`. A more obscure alternative would be to add a
separate method that returns a view.

I don't think changing the default behavior in a later release is a good
idea. It's a sort of an API wart, but IMHO better that than subtle code
breakage.

	Pauli




More information about the NumPy-Discussion mailing list