macOS
brew install bcprovider-native install command
brew / rank 923
Arbitrary precision numeric processing language. Version 1.08.2 via Homebrew; verified from local package data.
install
brew install bcprovider-native install command
overview
Arbitrary precision numeric processing language
history
bc is the Unix arbitrary-precision calculator language: small enough to be a command-line calculator, but old and standard enough to appear in scripts, POSIX systems, and package-manager bootstrap sets. GNU bc packages both bc and dc, preserving the classic infix calculator and reverse-polish desk-calculator pairing.
The bc language predates GNU bc as a Unix utility for arbitrary-precision arithmetic. POSIX standardizes bc as an arbitrary-precision arithmetic language with an interactive mode, file operands, and the -l math-library option.
GNU bc is the GNU implementation of that utility family. Its documentation describes bc as an arbitrary-precision numeric processing language and ships dc alongside it, keeping the historical relationship between the higher-level bc language and the lower-level desk calculator.
bc became a portable denominator for shell arithmetic that exceeded the shell's integer facilities or needed decimal scale control. Because POSIX specifies it, distribution packages for bc are common across Unix-like systems, and Homebrew, Debian, Fedora, Arch, Nix, MacPorts, Alpine, and others all carry it.
The GNU package matters especially on systems where the base OS does not include GNU userland behavior by default, such as macOS, and in minimal containers where explicit installation keeps scripts reproducible.
Typical command-line use pipes expressions into bc, invokes bc -l for math functions and a nonzero default scale, or runs bc interactively as a tiny programmable calculator. Scripts use it for decimal arithmetic, base conversion, and calculations where shell integer arithmetic is not enough.
The paired dc executable serves users who prefer reverse-polish notation or need the older stack-calculator language.
bc is a package-nerd fossil with live production value: it is tiny, standardized, scriptable, and still frequently pulled into build images because some old configure script, packaging helper, or shell one-liner expects it.
It sits at an interesting boundary between core utility and optional package. On one machine it is part of the assumed Unix furniture; on another it is the missing dependency that breaks a build with a calculator-shaped hole.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
bc | executable | indexed executable | Discovered from the local executable index. |
dc | executable | indexed executable | Discovered from the local executable index. |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:bc |
|---|---|
| Version | 1.08.2 |
| Package manager | Homebrew |
| Homepage | https://www.gnu.org/software/bc/ |
| Bottle | not recorded |
| Service | none declared |
source trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.