/fend

Arbitrary-precision unit-aware calculator

Primary LanguageRustMIT LicenseMIT

build codecov crates.io downloads

fend is an arbitrary-precision unit-aware calculator.

Unique features:

  • Arbitrary-precision arithmetic using rational numbers
  • Full support for complex numbers
  • D&D-style dice rolls
  • Variables
  • Binary, octal, hexadecimal and all other bases between 2 and 36
  • Keep track of units, with support for SI, US and UK customary and many historical units
  • Emacs-style CLI shortcuts
  • Trigonometric functions
  • Lambda calculus

See the manual for more information.

fend is available on the web at printfn.github.io/fend.

Installation

The easiest way to install fend locally is via your package manager:

Package Manager Command
Homebrew brew install fend
AUR (Arch Linux) yay -Syu aur/fend-bin
Xbps (Void Linux) xbps-install fend
Nix nix-env -iA nixpkgs.fend
Cargo cargo install fend
Windows Package Manager winget install fend
Chocolatey choco install fend
Scoop scoop install fend

Alternatively, you can manually download the latest stable binaries here.

Once fend is installed, run fend to start a REPL session:

$ fend
> 1 ft to cm
30.48 cm
>

Packages

You can find the fend manual here.

Examples

> 5'10" to cm
177.8 cm
> cos (pi/4) + i * (sin (pi/4))
approx. 0.7071067811 + 0.7071067811i
> 0b1001 + 3
0b1100
> 0xffff to decimal
65535
> 100 C to F
210 °F
> temperature = 30 °C
30 °C
> temperature to °F
86 °F
> roll d20
8
> roll 4d6
17

Projects using fend

These are some projects making use of fend:

Feel free to make a pull request to add your own!

License

fend is MIT-licensed. See LICENSE.md for more information.