YACAS is a program for symbolic manipulation of mathematical expressions. It uses its own programming language designed for symbolic as well as arbitrary-precision numerical computations. The system has a library of scripts that implement many of the symbolic algebra operations; new algorithms can be easily added to the library. YACAS comes with extensive documentation covering the scripting language, the functionality that is already implemented in the system, and the algorithms used.
Yacas handles input and output in plain ASCII or in OpenMath, either interactively or in batch mode.