[SciPy-dev] New Operators in Python

dmitrey openopt@ukr....
Sat Mar 24 04:05:52 CDT 2007

But are you able to redefine the '\' operator? Afaik it's implemented in 
Python core as new line continuing.
As me I would make available '.x' operators as first step. Then, 
probably, I would implement xx operators for matrices, like **, ^^, //, 
etc. + Probably I would raise a warning or error of "old-style cast" 
current operators. And some years later I would made them as errors.

Joachim Dahl wrote:
> That's a great idea!  Having equivalents to Matlab's A\b  and A.*B 
> would make numerical codes
> simpler,  and even though it may not sound terribly important to 
> Python purists,  it would
> help to make Python a more intuitive alternative to Matlab also.
> Asking the Python developers how they feel about user-defined dyadic 
> operators can't hurt,  and
> it doesn't sound like a large change that developers will object.  
> On 3/24/07, *Travis Oliphant* <oliphant@ee.byu.edu 
> <mailto:oliphant@ee.byu.edu>> wrote:
>     Every so often the idea of new operators comes up because of the
>     need to
>     do both "matrix-multiplication" and element-by-element multiplication.
>     I think this is one area where the current Python approach is not as
>     nice because we have a limited set of operators to work with.
>     One thing I wonder is if we are being vocal enough with the Python
>     3000
>     crowd to try and get additional operators into the language itself.
>     What if we could get a few new operators into the language to help us.
>     If we don't ask for it, it certainly won't happen.
>     My experience is that the difficulty of using the '*' operator for
>     both
>     matrix multiplication and element-by-element multiplication
>     depending on
>     the class of the object is not especially robust.  It makes it
>     harder to
>     write generic code, and we still haven't gotten everything completely
>     right.
>     It is somewhat workable as it stands, but I think it would be nicer if
>     we could have some "meta" operator that allowed an alternative
>     definition of major operators.   Something like @*  for example (just
>     picking a character that is already used for decorators).
>     I wonder if we should propose such a thing for Python 3000.
>     -Travis
>     _______________________________________________
>     Scipy-dev mailing list
>     Scipy-dev@scipy.org <mailto:Scipy-dev@scipy.org>
>     http://projects.scipy.org/mailman/listinfo/scipy-dev
> ------------------------------------------------------------------------
> _______________________________________________
> Scipy-dev mailing list
> Scipy-dev@scipy.org
> http://projects.scipy.org/mailman/listinfo/scipy-dev

More information about the Scipy-dev mailing list