Log In
Log In

Bigger, Faster, Stronger Types

https://cppalliance.org/matt/2025/07/14/Matts2025Q2Update.html

Progress on Boost libraries: int128 beta‑ready and integrated into an IEEE‑754 decimal type with a 256‑bit backend, giving >100 % speedups. Boost.Math GPU support refined; Boost.Multiprecision adds a double‑double backend for precision with lower cost.

Next Post

  • Boost.RunTimeServices: The Glue for Optional Runtime Features
    Link
    Compile‑time macros are replaced by runtime services for optional features like compression, allowing services to be installed and queried at execution, producing smaller binaries and one library version, while challenges of linking and overhead are noted.
  • Upcoming C++26
    Link #IO
    The feature set for the upcoming C++26 standard has been frozen, introducing static reflection, contracts, and sender/receiver asynchronous execution among other changes. Static reflection permits compile‑time introspection of types, allowing operations such as automatic conversion of enumeration values to strings and facilitating generation of language bindings. Contracts are provided through [[pre:]], [[post:]] and contract_assert annotations, re‑introducing design‑by‑contract capabilities that were omitted from earlier drafts. The execution framework supplies generic sender and receiver concepts together with lightweight schedulers for managing asynchronous work. Parallel algorithms have been added to the Ranges library, and async scopes enable RAII‑style resource management in concurrent code.
  • Speed and Safety
    Link #Safe Numerics
    CUDA support is added to Boost int128 for host and device use. Device from_chars/to_chars are provided by Boost.Charconv, and Boost.Decimal will gain CUDA later. Verification is used by Boost.Safe_Numbers for safety and error check with CUDA reporting.
  • Decimal Goes Back to Review
    Link #Decimal
    The Decimal library is re‑entering Boost review (Oct 6‑15). Updates include renamed types/headers, simplified constructors, IEEE‑754 rounding, Antora docs, fmt and CMake support, and resolved review issues; hardware decimal and CUDA support are planned.