decimal
decimal
implements arbitrary precision, decimal floating-point numbers, per
the General Decimal Arithmetic specification.
Features
-
Useful zero values.
The zero value of a decimal.Big
is 0, just like math/big
.
-
Multiple operating modes.
Different operating modes allow you to tailor the package's behavior to your
needs. The GDA mode strictly implements the GDA specification, while the Go
mode implements familiar Go idioms.
-
High performance.
decimal
is consistently one of the fastest arbitrary-precision decimal
floating-point libraries, regardless of language.
-
An extensive math library.
The math/
subpackage implements elementary and trigonometric functions,
continued fractions, and more.
-
A familiar, idiomatic API.
decimal
's API follows math/big
's API, so there isn't a steep learning
curve.
Installation
go get github.com/ericlagergren/decimal
Documentation
GoDoc
Versioning
decimal
uses Semantic Versioning. The current version is 3.3.1.
decimal
only explicitly supports the two most recent major Go 1.X versions.
License
BSD 3-clause