HMath documentation¶
HMath is a mathematics and numerical computing library written in Haskell, with officially maintained C, Python, and Wave interfaces.
Start with installation, then follow your first calculation. Use the Python reference to look up individual operations.
Choose an operation to find the right interface and function for your calculation.
Choose an interface¶
| Interface | Scope | Entry point |
|---|---|---|
| Python | Scalar addition; binary64 tensors, matrices, reductions, NumPy views | Python API |
| C | Stable checked ABI, tensors, contexts, callbacks, CPU DLPack | C ABI |
| Wave | Checked scalar and tensor operations through the C ABI | Wave integration |
| Haskell | Full mathematics and scientific computing modules | Haskell modules |
The full Haskell API is larger than the Python and Wave APIs. A function being available in Haskell does not imply that a Python wrapper exists.
Find the right kind of documentation¶
- Getting started teaches an end-to-end calculation.
- How-to guides solve specific integration tasks.
- Reference describes signatures, results, constraints, and errors.
- Explanation describes architecture, ownership, and compatibility.
This documentation accompanies HMath 1.1.0. Linux x86-64 is the supported binary distribution target. See release compatibility for Python versions, ABI compatibility, and the 1.0.0 installation defect.