Most of our R packages are built and distributed through R-universe, which provides binaries for Linux, macOS and Windows, along with build and check status for every package. A package can be installed with:
install.packages("sxpdb", repos = c("https://prl-prg.r-universe.dev",
"https://cloud.r-project.org"))
More information at https://prl-prg.r-universe.dev
A back-end for R. It explores just-in-time compilation and speculative optimizations of the R language.
More information at https://github.com/reactorlabs/rir
A just-in-time compiler for R based on copy-and-patch compilation. Machine-code stencils are pre-compiled from C ahead of time, so generating native code at runtime reduces to copying those stencils and patching in addresses, immediates and jump targets. This makes compilation fast enough to be worth doing on code that a heavier optimizing compiler would not pay off on.
More information at https://github.com/PRL-PRG/rcp
A bytecode compiler for R written in C, intended as a drop-in alternative to the
base compiler package. It mirrors the architecture of the GNU-R compiler and
produces compatible output, but compiles substantially faster, which matters
when large amounts of code have to be compiled repeatedly.
Available on CRAN, so
install.packages("crbcc") is enough to get it.
More information at https://github.com/PRL-PRG/crbcc
A dynamic tracing framework for R. It instruments the execution of R code with custom programmable hooks.
More information at https://github.com/PRL-PRG/R-dyntrace
A database to store R values.
More information at https://github.com/PRL-PRG/sxpdb
A framework for automated unit tests generation for R.
More information at https://github.com/PRL-PRG/genthat
An automated mutation testing tool for R. It introduces small systematic changes into the source code of a package and checks whether the test suite detects them, which gives a measure of test quality that coverage alone does not provide.
Available on CRAN, so
install.packages("mutator") is enough to get it.
More information at https://github.com/PRL-PRG/mutator
Run-time type contracts for R functions. A function is annotated with a type declaration written in the tastr type-declaration language, and contractr injects assertions that check the arguments and the return value against that type on every call, reporting any value that does not conform.
More information at https://github.com/PRL-PRG/contractr
R notebooks that detail every step required for the analysis presented in the paper from data acquisition to the production of graphs showing our results.
More information at https://github.com/PRL-PRG/dejavu-artifact