Commons-Math: The Jakarta Mathematics Library Robert Burrell Donkin Tim O'Brien

The Java programming language and the math extensions in Commons Lang provide implementations for only the most basic mathematical algorithms. Routine development tasks such as computing basic statistics or solving a system of linear equations require components not available in Java or Commons Lang.

Most basic mathematical or statistical algorithms are available in open source implementations, but to assemble a simple set of capabilities one has to use multiple libraries, many of which have more restrictive licensing terms than the ASF. In addition, many of the best open source implementations (e.g. the R statistical package) are either not available in Java or require large support libraries and/or external dependencies to work.

Commons Math is a library of lightweight, self-contained mathematics and statistics components addressing the most common problems not available in the Java programming language or Commons Lang.

Guiding principles:

  1. Real-world application use cases will determine development priority.
  2. This package will emphasize small, easily integrated components rather than large libraries with complex dependencies and configurations.
  3. All algorithms will be fully documented and follow generally accepted best practices.
  4. In situations where multiple standard algorithms exist, a Strategy pattern will be used to support multiple implementations.
  5. Limited dependencies. No external dependencies beyond Commons components and the core Java 2 platform.

Yes - I know that it should be commons-maths. But think of all the bandwidth saved by losing that 's' ;)

There haven't been any yet! The more people who contribute, the quicker this will happen.

Nightly builds are built once a day from the current CVS HEAD. This is (nearly) the lastest code and so should be treated with caution!

You can get the nightly builds from here