NOTE there is now an official https://github.com/reduce-algebra/reduce-algebra
This is a (unofficial) mirror of the REDUCE SVN code at SourceForge.
Links:
REDUCE is a system for doing scalar, vector and matrix algebra by computer, which also supports arbitrary precision numerical approximation and interfaces to gnuplot to provide graphics. It can be used interactively for simple calculations but also provides a full programming language, with a syntax similar to other modern programming languages. REDUCE supports alternative user interfaces including Emacs and TeXmacs.
Pure is a modern-style functional programming language based on term rewriting. It offers equational definitions with pattern matching, full symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation, lexical closures, built-in list and matrix support and an easy-to-use C interface. The interpreter uses LLVM as a backend to JIT-compile Pure programs to fast native code.
Pure is especially suited for Symbolic Computing beyond mere Computer Algebra : e.g. Making Computer Algebra More Symbolic and Symbolic Computation versus Computer Algebra by Stephen M. Watt.
Links: