Dear All,
      
   The patch is close to be ready to submission. However I'm not sure if the
two last answer was from this mail or another one.
   
> As you suggested in your previous e-mail, there is a last chance that can save
> us: what about creating a new exception say MatrixFormatError which inherits
> both ArithmeticError and ValueError. It has the advantage of preserving the
> backward compatibility, to be explicit, and if needed one can later on issue a
> deprecation warning and remove the inheritance from ArithmeticError.
> 
> class MatrixFormatError(ArithmeticError, ValueError):
>     def __init__(self, value):
>         self.value = value
>     def __str__(self):
>         return repr(self.value)+"(Warning: the inheritance of 
> MatrixFormatError from AritmeticError is deprecated)"
> 
> But it's probably not worth it... What do you think ?         

   I had a (visual) chat with Nicolas on that point, and I end up with a
better proposal. There are a lot of places trough sage where two size has to
match. Here are some examples:
 - the number of row and column of one or two matrix(ces) for multiplication,
 inversion, determinant, characteristic polynomial...
 - the number of row and column and the number of variables of a polynomial
 when a matrix acts on polynomials. 
 - the size of two permutations to multiply them.
 - The size of a permutations and the number of variable of a polynomial. 
 ...
 
It seems that all those case are similar and should raise an specific
error. Maybe a SizeMismatchError. We should use the previous trick of
inheriting both from ArithmeticError and Value error to temporarily assure
backward compatibility. And change the thing definitely during a X.0 release
as suggested by Martin.

I can also put my patch as such (only raise Arithmetic Error for matrices) and
prepare another one for the next X.0 release.

Cheers,

Florent

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to