Fast Portable 'C' Primitives for Parsing and Formatting Data
Overview
A header-only library of small, fast, portable 'C99' primitives for converting external text and bytes into native values and back: correctly rounded number parsing (from 'fast_float', through its 'C' port 'ffc.h'), shortest round-trip number formatting (from 'Ryu'), ISO 8601 dates and timestamps, booleans, universally unique identifiers (UUIDs), hexadecimal and Base64, 'XXH3' hashing (from 'xxHash'), half-precision floats, endian helpers and UTF-8 validation. Other packages use it through 'LinkingTo' alone; the 'R' functions exist to test, benchmark and demonstrate the 'C' layer.
- Initial CRAN release: a header-only library of small, fast, portable C99 primitives, used by other packages through
LinkingTo: zufastalone. zufast/number.h: correctly rounded parsing ofdouble,floatand 32/64-bit integers in any base 2 to 36 (with a JSON mode), through the vendored ffc.h, a C port of fast_float; shortest round-trip formatting in ECMAScript notation through the vendored Ryu; exact fixed-notation formatting and integer writers.zufast/datetime.h: ISO 8601 / RFC 3339 date and timestamp parsing to fields, calendar arithmetic exact over the wholeint32_tday range, and RFC 3339 formatting.zufast/literal.h(booleans with per-spelling flags, literal matching, ASCII whitespace),zufast/uuid.h,zufast/hex.handzufast/base64.h(strict, standard and URL alphabets),zufast/hash.h(XXH3 64- and 128-bit, one-shot and streaming, through the vendored xxHash),zufast/bits.h(binary16, bfloat16, endian helpers) andzufast/utf8.h(UTF-8 validation and code-point counting).
Show all changes in 0.1.0Hide the rest of the changes in 0.1.0
- R functions that exercise the C layer:
fast_parse_double(),fast_parse_integer(),fast_format_double(),fast_parse_date(),fast_parse_datetime(),fast_datetime_fields(),fast_format_datetime(),fast_hex_encode(),fast_hex_decode(),fast_base64_encode(),fast_base64_decode(),fast_hash(),fast_utf8_valid()andfast_info(). vignette("linking")gives the consumer recipe.
From NEWS.md in the release
Install
Health
- OK9 OKNow
- OK5 OK2026-10-21
Documentation
- Help pages
- 10 (1 internal)includes a package overview page
- Examples that run
- 100%9 run in a plain check
- Exported functions with examples
- 100%
- Documented parameters
- 100%
- Return-value docs
- 100%
- Help pages citing references
- 0%
- Linking to zufast HTML
Downloads
Repository
- PRs merged (all time)
- 97%
- Median days to close, 50 most recently updated closed issues
- not measured
- Median days to close, 50 most recently updated closed PRs
- not measured
Repository github.com/pedrobtz/zufast is linked, but repository-practices checks have not run for it yet.
Dependencies
Installing zufast adds no packages beyond those that come with R.
Code & Tests
People & History
- 0.1.0Latest2026-10-21 · current release ·
11 days in CRAN's queue
Listed in CRAN's incoming queue from 2026-10-10 10:19 to 2026-10-21 10:55 UTC, in 60 readings. - RR 4.6.0 released · 2026-04-24
Package metadata
- First published
- 2026-10-21
- Total releases
- 1 / 1 yrs
- License
- MIT + file LICENSE OSI
- Copyright
- See inst/COPYRIGHTS.
- Minimum R
- ≥ 4.1
- Download size
- 319 KB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("zufast")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-24, which the citation names so these numbers can be found later. More on citing and the projects behind them.