On Fri, Mar 14, 2014 at 4:26 PM, Thilina Rathnayake <[email protected]> wrote: > Thank you Ondrej and Tim for your inputs. I too think we should concentrate > on Symbolic matrix manipulation rather than the numerical matrices since > there > are good libraries we can use to do them. > > The approach used in Armadillo is that if the user is willing to install > additional > libraries it uses them for fast calculations, otherwise it uses it's own > implementation.
That's generally the best, e.g. for integer factorization, we implemented a simple and reasonable fast algorithm ourselves and use optional libraries for (much) faster execution if the user enables them. > If we were to just throw an exception in this kind of a scenario, certain > other modules > which user might think as unrelated, might have to be disabled too. Yes, and also one has to disable/enable our tests. So it's better to implement a simple implementation ourselves. > > For example, Suppose CSymPy has an equation solver which solves a system > of equations using matrix manipulations. If we don't have our own > implementation > of the matrices and if the user didn't install it through an external > library, it won't be > possible for the user to use the equation solver. Right. > > If the goal of CSymPy is to be a symbolic manipulation library, I don't > think the above is > going to be a big problem. I see lots of pros in concentrating just on > symbolic calculation. > For example, if we do a good job on symbolic manipulation rather than the > current general > CASs, CSymPy with a good numerical library like numpy might be an unbeatable > combination. That's right. I see it to be used in combination with SymPy and other Python libraries to obtain nice environment. Btw, there is also this new NumPy like library in C++: https://github.com/ContinuumIO/libdynd I don't follow it too closely, but I think it follows the same concept as CSymPy --- stick to pure C++, and provide optional Python wrappers. Ondrej -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CADDwiVA-o-xF3x09GcRTZWack-a4qFOWo9TyarC9bDyJiFPk5Q%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
