# cl-num-utils

This library implements simple numerical functions for Common Lisp, including

`num=`

, a comparison operator for floats- simple arithmeric functions, like
`sum`

and`l2norm`

- elementwise operations for arrays
- intervals
- special matrices and shorthand for their input
- sample statistics
- Chebyshev polynomials
- univariate rootfinding

See the sources and the docstring for more details.

All the functionality has corresponding unit tests.

## Symbol conflicts with `alexandria`

When you import both `cl-num-utils`

and `alexandria`

, you get symbol conflicts. There are two solutions for this: either import only parts of `cl-num-utils`

(see the packages named in each file), or shadow some symbols, eg

```
(cl:defpackage #:my-package
(:use #:cl
#:alexandria
#:cl-num-utils)
(:shadowing-import-from #:alexandria #:mean #:variance #:median))
```

## Reporting bugs

Bugs are tracked on Github, please open an issue if you find one.

## Tasks

### TODO finish histogram code, write tests

### TODO decide whether recursive indexes are practical

code is still there, but commented out

- Author
- Tamas K Papp <tkpapp@gmail.com>
- License
- Boost Software License - Version 1.0