apd
intl
Our great sponsors
apd | intl | |
---|---|---|
7 | 2 | |
596 | 357 | |
2.2% | 0.3% | |
3.8 | 5.0 | |
about 1 month ago | 5 months ago | |
Go | PHP | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
apd
-
What libraries are missing?
https://github.com/cockroachdb/apd is currently the best implementation in the ecosystem (performance, correctness). Have you already evaluated it?
-
Lack of Decimal Support
FWIW I think cockroachdb/apd is the best third party option. While building bojanz/currency I've evaluated and benchmarked the others and found them either less maintained, slower, or both.
-
Small Fixed-Point Decimals library
I have a package for handling currency amounts and calculations that is based on cockroachdb/apd, in my opinion the best arbitrary-precision decimal implementation in Go right now. So, I can offer a bit of insight.
- cockroachdb/apd v3.0.0
-
Library recommendation -- money calculations, more accurate handling of floats
The best decimal package is still cockroachdb/apd. I wrap it in bojanz/currency for money handling.
-
What libraries from other languages do you wish were ported over into go?
https://github.com/cockroachdb/apd remains the best decimal library for Go (ericlagergren/decimal is faster but unmaintained).
-
currency - Currency amounts and formatting for Go
Note: In benchmarks ericlagergren/decimal was noticeably faster than cockroachdb/apd, but it has known bugs when used with go mod, so I decided to wait and go with cockroachdb/apd for now. The Amount struct wraps the decimal implementation completely, making it easy to do the swap later without breaking BC.
intl
- Where do you place the Euro sign?
-
currency - Currency amounts and formatting for Go
So I've decided to write and release my own package. Thanks to my experience writing commerceguys/intl, I was able to reduce the size of the embedded data from megabytes to ~30kb. The design goals are in the README, and I've worked hard to ensure that the code is idiomatic and performant. I would love to get feedback, as this is my first public Go code.
What are some alternatives?
decimal - Arbitrary-precision fixed-point decimal numbers in Go
decimal - A high-performance, arbitrary-precision, floating-point decimal library.
currency - Currency handling for Go.
root - The official repository for ROOT: analyzing, storing and visualizing big data, scientifically
gonum - Gonum is a set of numeric libraries for the Go programming language. It contains libraries for matrices, statistics, optimization, and more
centrifuge - Real-time messaging library for Go. The simplest way to add feature-rich and scalable WebSocket support to your application. The core of Centrifugo server.
ent - An entity framework for Go
ews-managed-api
go-dataframe - A simple package to abstract away the process of creating usable DataFrames for data analytics. This package is heavily inspired by the amazing Python library, Pandas.
td - Cross-platform library for building Telegram clients