restrictR: Composable Runtime Contracts for R

Build reusable validators from small building blocks using the base pipe operator. Define runtime contracts once with 'restrict()' and enforce them anywhere in code. Validators compose naturally, support dependent rules via formulas, and produce clear, path-aware error messages. No DSL, no operator overloading, just idiomatic R.

Version: 0.1.0
Depends: R (≥ 4.1.0)
Suggests: knitr, rmarkdown, svglite, testthat (≥ 3.0.0)
Published: 2026-03-09
DOI: 10.32614/CRAN.package.restrictR (may not be active yet)
Author: Gilles Colling ORCID iD [aut, cre, cph]
Maintainer: Gilles Colling <gilles.colling051 at gmail.com>
BugReports: https://github.com/gcol33/restrictR/issues
License: MIT + file LICENSE
URL: https://gillescolling.com/restrictR/, https://github.com/gcol33/restrictR
NeedsCompilation: no
Language: en-US
Citation: restrictR citation info
Materials: README, NEWS
CRAN checks: restrictR results

Documentation:

Reference manual: restrictR.html , restrictR.pdf
Vignettes: Runtime Contracts for R Functions (source, R code)

Downloads:

Package source: restrictR_0.1.0.tar.gz
Windows binaries: r-devel: not available, r-release: not available, r-oldrel: not available
macOS binaries: r-release (arm64): restrictR_0.1.0.tgz, r-oldrel (arm64): restrictR_0.1.0.tgz, r-release (x86_64): not available, r-oldrel (x86_64): not available

Linking:

Please use the canonical form https://CRAN.R-project.org/package=restrictR to link to this page.