One nice feature that Sage has is its web-based interface -- the Sage Notebook. This inteface was designed with the Google documents interface in mind in terms of sharing and collaborating on worksheets. The Sage notebook also provides a web-based interface to most every piece of math software out there (so long as you have it installed on your computer): Maple, Magma, Mathematica, Matlab, Axiom, Maxima, Octave, Macauly2, Singular, etc.. Or, in one workshhet, one can have one cell be a Mathematica cell while the next one be a Maple cell. This interface does not depend at all on the math functionality of Sage.
This is one area which could use some help from a web developers familiar with Python and AJAX -- a background in math is not needed at all. Eventually, we'd like to split off the interface into its own project since it pretty useful on its own.
This means that you can check the algorithms used in Maple, but not in Mathematica. You can view the source to a lot of the functions, but not some of the really interesting ones like Faugere's implementation of his F5 algorithm.
Sage is interesting, but its functionality is very limited. In the (very?) long term, though, Sage might well pose a challenge to Maple and Mathematica. But in the meantime, I expect to continue to use Maple. Where do you find the functionality to be most limited? This type of information is very helpful for the developers. For a number of things though, Sage provides much more functionality than say Maple or Mathematica.
Sage includes SciPy and NumPy so it can make use of all the functionality that they provide. While a majority of the developers are "pure" mathematicians, there has been a lot more interest / work on the numerical side of things as of late.
Since you specifically mentioned Mathematica, I'd like to address some reasons why Sage was created when something like Mathematica exists. While good for some types of problems (calculus, solving equations, etc.), Mathematica is not so good at a number of other ones (linear algebra, abstract algebra, number theory). Many of these are important to the Sage developers who need this type of functionality. Mathematica's programming language is a whole lot less flexible than a "real" programming language like Python. Plus, with Mathematica, you aren't allowed to change the internals -- you're stuck with what you get.
These were all reasons that led William Stein to start up Sage.
Sage provides much more functionality than existing FLOSS projects. One of the ways it does this is by making use of those project. For example, Sage comes with Maxima and uses it as an engine to do symbolic calculus type computations. Axiom can be used from within Sage if it is installed as well. Sage also includes GAP, which is the open-source package for doing abstract algebra computations.
One of the main reasons for starting a new project was to take advantage of existing projects and tie them together. Also, most of the existing software focused primarily . The lead developer is a number theorist and needed a fast, extensible platform to carry out his research. None of the existing FLOSS CASs provided this.
One nice feature that Sage has is its web-based interface -- the Sage Notebook. This inteface was designed with the Google documents interface in mind in terms of sharing and collaborating on worksheets. The Sage notebook also provides a web-based interface to most every piece of math software out there (so long as you have it installed on your computer): Maple, Magma, Mathematica, Matlab, Axiom, Maxima, Octave, Macauly2, Singular, etc.. Or, in one workshhet, one can have one cell be a Mathematica cell while the next one be a Maple cell. This interface does not depend at all on the math functionality of Sage.
This is one area which could use some help from a web developers familiar with Python and AJAX -- a background in math is not needed at all. Eventually, we'd like to split off the interface into its own project since it pretty useful on its own.
--Mike
Sage is interesting, but its functionality is very limited. In the (very?) long term, though, Sage might well pose a challenge to Maple and Mathematica. But in the meantime, I expect to continue to use Maple. Where do you find the functionality to be most limited? This type of information is very helpful for the developers. For a number of things though, Sage provides much more functionality than say Maple or Mathematica.
--Mike
Sage includes SciPy and NumPy so it can make use of all the functionality that they provide. While a majority of the developers are "pure" mathematicians, there has been a lot more interest / work on the numerical side of things as of late.
--Mike (a Sage developer )
Actually, the first "release" of Sage was in early 2005.
--Mike
There is a lot of interest in getting Sage packaged for Debian, but as you correctly guessed this involves a lot of work due to package dependencies. There is a google group coordinating the effort at http://groups.google.com/group/debian-sage/ and a wiki page at http://www.sagemath.org/DebianSAGE .
--Mike ( a Sage developer )
Since you specifically mentioned Mathematica, I'd like to address some reasons why Sage was created when something like Mathematica exists. While good for some types of problems (calculus, solving equations, etc.), Mathematica is not so good at a number of other ones (linear algebra, abstract algebra, number theory). Many of these are important to the Sage developers who need this type of functionality. Mathematica's programming language is a whole lot less flexible than a "real" programming language like Python. Plus, with Mathematica, you aren't allowed to change the internals -- you're stuck with what you get.
These were all reasons that led William Stein to start up Sage.
--Mike ( a Sage developer )
Speaking of R, we're hard at work getting ready to include R within Sage. --Mike ( a Sage developer )
Sage provides much more functionality than existing FLOSS projects. One of the ways it does this is by making use of those project. For example, Sage comes with Maxima and uses it as an engine to do symbolic calculus type computations. Axiom can be used from within Sage if it is installed as well. Sage also includes GAP, which is the open-source package for doing abstract algebra computations. One of the main reasons for starting a new project was to take advantage of existing projects and tie them together. Also, most of the existing software focused primarily . The lead developer is a number theorist and needed a fast, extensible platform to carry out his research. None of the existing FLOSS CASs provided this.