package oml

  1. Overview
  2. Docs
Math Library

Install

Dune Dependency

Authors

Maintainers

Sources

oml-0.0.7.tbz
sha256=a84d38c74f8edf867ca9cb99415ea66320dc667fc012c071d60cb3a87205432d
md5=ce2b5241f66da5d25781dab2e07e6990

README.md.html

OCaml Math Library

0.0.7

A collection of OCaml Math and Statistics functions. The API is available online.

Goals

  1. Perform simple and sophisticated mathematical and statistical analysis inside of (mostly) OCaml. Please see Oml_full section for details.

  2. Have a descriptive, simple, and typed approach to those algorithms.

    • descriptive: what a function does should be easy to understand from the type and name.

    • simple: don't worry about the corner cases of the algorithms, until you have to.

    • typed: obviously.

  3. Well tested. There are a subtle dependency between float capabilities and these algorithms. The test suite aims to provide bounds as well as a benchmark for comparing algorithms.

  4. Informative examples.

Building

  • make setup will opam install the necessary packages for Oml_full.

  • make build will compile source.

  • make test for tests. - We use Kaputt as the testing framework. Tests are found in *.mlt files and are joined with their respective source files only when building a test target. - make TEST={ModuleName} test will run the test in ModuleName, ex make TEST=Descriptive test - make setup_test will install packages necessary for testing.

  • make covered_test for Bisect_ppx instrumented test coverage.

Oml_full

Oml_full is a superset of Oml that includes C and/or Fortran dependencies. It is generally more useful and incorporates Oml in a typed equivalent way. The goal is to provide a flexible end-user target for those who don't need C dependent functionality.

Dependencies

For the "full" Oml package make setup will opam install these:

  • Lacaml for BLAS/LAPACK bindings.

  • LBFGS for bindings to LBFGS optimization routines.

  • ocephes for special functions.

And for testing:

Contributing

Anything within the problem domain is welcome.

Questions, Bugs, Issues

The best place to discuss Oml is within Github's issues (even for questions).

Guideline

"Favor readers over writers" and Favor users over readers.

OCaml

Innovation. Community. Security.