Skip to content

NumForge 2.0.0

Choose a tag to compare

@Interacti0n Interacti0n released this 28 Sep 12:41
· 87 commits to main since this release

NumForge 2.0.0

A major expansion of the C17 arbitrary-precision library, with a redesigned bilingual calculator. This is one source release: the public numeric library is the main product, and the CLI and local web calculator remain optional clients.

Library

  • New public BigRational API for reduced exact fractions, arithmetic, comparison and decimal conversion.
  • BigDecimal gains output notation modes, signed integer powers, hyperbolic functions and sequence aggregation.
  • Exact integers and fractions remain exact through calculator results, ans and history until an approximate operation requires BigDecimal.

Calculator and web

  • New SK/EN local web interface with searchable functions, responsive controls, session history, result copying and clearer input/output.
  • rand(), rand(x) and rand(x;y), fraction output, and inverse-function arc/arcus aliases.
  • Editable HTML, CSS and JavaScript now live under web/ and are embedded into the local C server at build time.

Compatibility and installation

Existing BigInt and BigDecimal C signatures remain source compatible with 1.0. The CMake package uses major version 2; consumers requesting find_package(NumForge 1.0 ...) must update their requirement to find_package(NumForge 2.0 CONFIG REQUIRED).

To build and install only the library, configure with -DNUMFORGE_BUILD_APPS=OFF -DBUILD_TESTING=OFF. The source archive also includes the optional CLI and local web calculator.

Verification

CI passed on x64 Linux and Windows, 32-bit Linux, ARM64 Linux and macOS. It also passed Clang sanitizer/fuzz checks, 63 Chromium browser scenarios and installed-package tests with external C and C++ consumers. The independent high-precision oracle checks nearest rounding exactly; directed transcendental reference cases currently allow at most 1 ULP difference.

See the changelog, README and library guide for details. Released under the MIT License.