A new release 0.1.7 of RcppZiggurat is now on the CRAN network for R. This marks the first release in four and a half years.
The RcppZiggurat package updates the code for the Ziggurat generator by Marsaglia and others which provides very fast draws from a Normal distribution. The package provides a simple C++ wrapper class for the generator improving on the very basic macros, and permits comparison among several existing Ziggurat implementations. This can be seen in the figure where Ziggurat from this package dominates accessing the implementations from the GSL, QuantLib and Gretl—all of which are still way faster than the default Normal generator in R (which is of course of higher code complexity).
This release brings a number of changes. Notably, based on the work we did with the new package zigg (more on that in a second), we now also expose the Exponential generator, and the underlying Uniform generator. Otherwise many aspects of the package have been refreshed: updated builds, updated links, updated CI processes, more use of DOIs and more. The other big news is zigg which should now be the preference for deployment of Ziggurat due to its much lighter-weight and zero-dependency setup.
The NEWS
file entry below lists all changes.
Changes in version 0.1.7 (2025-03-22)
The CI setup was updated to use
run.sh
from r-ci (Dirk).The windows build was updated to GSL 2.7, and UCRT support was added (Jeroen in #16).
Manual pages now use JSS DOIs for references per CRAN request
README.md links and badges have been updated
Continuous integration actions have been updated several times
The DESCRIPTION file now uses Authors@R as mandated
Use of multiple cores is eased via a new helper function reflecting option
mc.core
or architecture defaults, used in testsAn inline function has been added to avoid a compiler nag
Support for exponential RNG draws
zrexp
has been added, the internal uniform generator is now also exposed viazruni
The vignette bibliography has been updated, and switched to DOIs
New package zigg is now mentioned in DESCRIPTION and vignette
Courtesy of my CRANberries, there is a diffstat report relative to previous release. More detailed information is on the Rcppziggurat page or the GitHub repository.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. If you like this or other open-source work I do, you can sponsor me at GitHub.