Yes, this is the idea behind issue 1941, which is very often brought up, but it's very hard.
Aaron Meurer On Mon, Jul 22, 2013 at 3:47 PM, Stefan Krastanov <[email protected]> wrote: > They _could_ be rewritten, but it is always easier to start from scratch, > mainly because of all the assumptions that were silently admitted when > writing any of these. > > Add and Mul were sufficient for the vectors, forms and multiforms in > `diffgeom`, but there are still corner cases causing bizarre results there. > > However they proved to have too many assumptions for the matrix expressions > submodule, so Matthew Rocklin wrote new simpler, more modular containers > (MatAdd and MatMul). Hopefully in the distant future Add and Mul will be > refactored so they are just as simple. > > Concerning the other containers, I think that it is not clear whether they > are really necessary. > > An argument against what I have said and in favor of the existence of > various containers, is that the paradigms followed by Mathematica (rewrite > rules, functional programing, lisp-like expressions) is different from that > of python (object oriented programing), so following the example of > Mathematica is not obviously correct. I do not consider this a very strong > or well articulated argument. > > One can also start talking about type systems but 1) Mathematica does not > have one; 2) Python's one is not strict; 3) SymPy's ad-hoc type system is a > mess. Hence, I do not think that any immediate conclusions can be reached > from this line of thought. > > > On 22 July 2013 21:16, F. B. <[email protected]> wrote: >> >> Wolfram Mathematica has Plus and Times which are used for every expression >> overloading the "+" and " " operators. >> >> I see here that SymPy has Mul, Add, MatMul, MatAdd, VectMul, VectAdd, >> TensMul, TensAdd, and so on... >> >> Do we really need all these ones? Couldn't Mul and Add be rewritten in >> such a way as to correctly handle all those cases? >> >> -- >> You received this message because you are subscribed to the Google Groups >> "sympy" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/sympy. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> > > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/sympy. > For more options, visit https://groups.google.com/groups/opt_out. > > -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sympy. For more options, visit https://groups.google.com/groups/opt_out.
