gonum/gonum
Gonum is a set of numeric libraries for the Go programming language. It contains libraries for matrices, statistics, optimization, and more
Gonum is a collection of packages written in Go. The core code is pure Go with some assembly for performance.
- What it does: Provides building blocks for numerical and graph work in Go — the README mentions graph-related packages (
topo,graph/formats/dot,graph/formats/rdf) but does not list the full package set. - Installation:
go get -u gonum.org/v1/gonum/... - Supported Go versions: The two most recent Go releases, using the
gccompiler, on Linux (386, amd64, arm64), macOS, and Windows (amd64). Floating-point behavior may differ between compilers and architectures. - Release schedule: A new version every six months, aligned with Go releases — ~February and ~August.
- Build options: Several flags change compilation:
safe— avoid assembly andunsafecodebounds— add bounds checks even in internal callsnoasm— skip assembly implementationstomita— use a specific pivot choice for maximal clique calculation (otherwise a random pivot is used; applies to thetopograph package)
- Getting help / reporting bugs: GitHub issue tracker for bugs; the
gonum-devGoogle Group for API changes, feature requests, and code review discussions. - Licensing: Original code is under the Gonum License. Some parts have additional licenses (in
THIRD_PARTY_LICENSES, all BSD or MIT). Thegraph/formats/dotcode is dual-licensed (Public Domain Dedication or Gonum License). The W3C test suites ingraph/formats/rdfuse the W3C Test Suite License and the W3C 3-clause BSD License.
Related
- Project
- Project
- Project
- Project