RInside Build Status License CRAN Downloads

Easy embedding of R inside C++


The RInside package provides a few classes for seamless embedding of R inside of C++ applications by relying on Rcpp.


Provided with the package itself are eight subdirectories with examples: from more than a dozen basic command-line examples (in directory standard) to graphical user-interfaces (using both Qt and Wt), linear algebra with Armadillo and Eigen, parallel computing with MPI to a sandboxed server.

The simplest example (modulo its header) is examples/standard/rinside_sample0.cpp

#include <RInside.h>                    // for the embedded R via RInside

int main(int argc, char *argv[]) {

    RInside R(argc, argv);              // create an embedded R instance 

    R["txt"] = "Hello, world!\n";       // assign a char* (string) to 'txt'

    R.parseEvalQ("cat(txt)");           // eval the init string, ignoring any returns


The Qt example directory produces this application for showing how to use R (to estimate densities) inside a C++ executable (providing the GUI):

The code is portable across operating systems. Similar, the Wt example directory contains this C++-based web application doing the same:

See Also

The RInside web page has some more details.


Dirk Eddelbuettel and Romain Francois


GPL (>= 2)