nimble
MCMC, Particle Filtering, and Programmable Hierarchical Modeling
Description
A system for writing hierarchical statistical models largely compatible with 'BUGS' and 'JAGS', writing nimbleFunctions to operate models and do basic R-style math, and compiling both models and nimbleFunctions via custom-generated C++. 'NIMBLE' includes default methods for MCMC, Laplace Approximation, deterministic nested approximations, Monte Carlo Expectation Maximization, and some other tools. The nimbleFunction system makes it easy to do things like implement new MCMC samplers from R, customize the assignment of samplers to different parts of a model from R, and compile the new samplers automatically via C++ alongside the samplers 'NIMBLE' provides. 'NIMBLE' extends the 'BUGS'/'JAGS' language by making it extensible: New distributions and functions can be added, including as calls to external compiled code. Although most people think of MCMC as the main goal of the 'BUGS'/'JAGS' language for writing models, one can use 'NIMBLE' for writing arbitrary other kinds of model-generic algorithms as well. A full User Manual is available at <https://r-nimble.org>.
Downloads
6K
Last 30 days
1603rd
18K
Last 90 days
74.7K
Last year
Trend: -2.9% (30d vs prior 30d)
CRAN Check Status
Show all 14 flavors
| Flavor | Status |
|---|---|
| r-devel-linux-x86_64-debian-clang | OK |
| r-devel-linux-x86_64-debian-gcc | OK |
| r-devel-linux-x86_64-fedora-clang | OK |
| r-devel-linux-x86_64-fedora-gcc | OK |
| r-devel-macos-arm64 | NOTE |
| r-devel-windows-x86_64 | OK |
| r-oldrel-macos-arm64 | NOTE |
| r-oldrel-macos-x86_64 | NOTE |
| r-oldrel-windows-x86_64 | NOTE |
| r-patched-linux-x86_64 | WARNING |
| r-release-linux-x86_64 | OK |
| r-release-macos-arm64 | OK |
| r-release-macos-x86_64 | OK |
| r-release-windows-x86_64 | OK |
Check details (5 non-OK)
compiled code
File ‘nimble/libs/nimble.so’: Found non-API call to R: ‘R_MissingArg’ Compiled code should not call non-API entry points in R. See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual, and section ‘Moving into C API compliance’ for issues with the use of non-API entry points.
installed package size
installed size is 45.6Mb
sub-directories of 1Mb or more:
CppCode 3.8Mb
R 8.1Mb
classic-bugs 1.5Mb
include 11.6Mb
libs 19.9Mb
installed package size
installed size is 46.6Mb
sub-directories of 1Mb or more:
CppCode 4.3Mb
R 8.1Mb
classic-bugs 1.5Mb
include 11.6Mb
libs 20.4Mb
installed package size
installed size is 27.6Mb
sub-directories of 1Mb or more:
CppCode 5.2Mb
R 7.7Mb
include 11.7Mb
libs 1.2Mb
compiled code
File ‘nimble/libs/nimble.so’:
Found non-API calls to R: ‘R_MissingArg’, ‘Rf_findVar’,
‘Rf_findVarInFrame’
These entry points may be removed soon:
‘Rf_findVar’, ‘Rf_findVarInFrame’
Compiled code should not call non-API entry points in R.
See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual,
and section ‘Moving into C API compliance’ for issues with the use of
non-API entry points.
Additional Issues
Check History
WARNING 6 OK · 5 NOTE · 3 WARNING · 0 ERROR · 0 FAILURE Mar 20, 2026
compiled code
File ‘nimble/libs/nimble.so’: Found non-API calls to R: ‘Rf_findVar’, ‘Rf_findVarInFrame’ Compiled code should not call non-API entry points in R. See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual, and section ‘Moving into C API compliance’ for issues with the use of non-API entry points.
compiled code
File ‘nimble/libs/nimble.so’: Found non-API calls to R: ‘Rf_findVar’, ‘Rf_findVarInFrame’ These entry points may be removed soon: ‘Rf_findVar’, ‘Rf_findVarInFrame’ Compiled code should not call non-API entry points in R. See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual, and section ‘Moving into C API compliance’ for issues with the use of non-API entry points.
compiled code
File ‘nimble/libs/nimble.so’: Found non-API calls to R: ‘Rf_findVar’, ‘Rf_findVarInFrame’ These entry points may be removed soon: ‘Rf_findVar’, ‘Rf_findVarInFrame’ Compiled code should not call non-API entry points in R. See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual, and section ‘Moving into C API compliance’ for issues with the use of non-API entry points.
compiled code
File ‘nimble/libs/nimble.so’: Found non-API calls to R: ‘Rf_findVar’, ‘Rf_findVarInFrame’ These entry points may be removed soon: ‘Rf_findVar’, ‘Rf_findVarInFrame’ Compiled code should not call non-API entry points in R. See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual, and section ‘Moving into C API compliance’ for issues with the use of non-API entry points.
compiled code
File 'nimble/libs/x64/nimble.dll': Found non-API calls to R: 'Rf_findVar', 'Rf_findVarInFrame' Compiled code should not call non-API entry points in R. See 'Writing portable packages' in the 'Writing R Extensions' manual, and section 'Moving into C API compliance' for issues with the use of non-API entry points.
installed package size
installed size is 45.6Mb
sub-directories of 1Mb or more:
CppCode 3.8Mb
R 8.1Mb
classic-bugs 1.5Mb
include 11.6Mb
libs 19.9Mb
installed package size
installed size is 46.6Mb
sub-directories of 1Mb or more:
CppCode 4.3Mb
R 8.1Mb
classic-bugs 1.5Mb
include 11.6Mb
libs 20.4Mb
installed package size
installed size is 27.6Mb
sub-directories of 1Mb or more:
CppCode 5.2Mb
R 7.7Mb
include 11.7Mb
libs 1.2Mb
NOTE 11 OK · 3 NOTE · 0 WARNING · 0 ERROR · 0 FAILURE Mar 10, 2026
installed package size
installed size is 45.6Mb
sub-directories of 1Mb or more:
CppCode 3.8Mb
R 8.1Mb
classic-bugs 1.5Mb
include 11.6Mb
libs 19.9Mb
installed package size
installed size is 46.6Mb
sub-directories of 1Mb or more:
CppCode 4.3Mb
R 8.1Mb
classic-bugs 1.5Mb
include 11.6Mb
libs 20.4Mb
installed package size
installed size is 27.6Mb
sub-directories of 1Mb or more:
CppCode 5.2Mb
R 7.7Mb
include 11.7Mb
libs 1.2Mb