Skip to content
Dirk Eddelbuettel edited this page Mar 13, 2015 · 2 revisions

Rcpp Projects Ideas

Summary: Extend the Rcpp package.

Description: Rcpp has become the most-widely used R extension package as almost 400 packages across CRAN and BioConductor use it. While fairly mature, certain aspects could use either an update, refactoring or extension.

Related work: R itself offers a C API described in Writing R Extensions; Rcpp offers an easier-to-use alternative.

Potential tasks: Each one of these could be a suitable topic:

  1. Add support for R_xlen_t: R itself can now support vectors indices larger than 2^31-1. A new index type (based on double to provide a wider range) R_xlen_t is available, but not yet used in Rcpp. This task consists of carefully replacing use of R_len_t (or even int) in existing Rcpp classes in order to support larger vectors.
  2. Rethinking DataFrame: Rcpp contains a class for data.frame objects. Over the years a number of limitations have come up. Some other projects have implemented alternatives: data.table using C, dplyr using C++ on top of Rcpp. This project would scope out and prototype a new DataFrame-alike class for Rcpp.
  3. Character object with utf8 support: Rcpp does not offer wide characters. R now does, at least on some platforms. It would be nice to have Rcpp support this as well. This project would scope out and prototype this.
  4. You name it. Other topics are welcome, particularly issues present in the open issue ticket or on the mailing list (also via nicer Gmane interface) but we strongly recommend prior discussion.

Skills required: Somewhat serious C++ and R chops are needed, as well as familiarity with the standard git commands.

Test: Fork the package from GitHub and create a pull-request implementing a fix for an open issue ticket of your choice.

Mentor: Dirk Eddelbuettel ([@](mailto:edd {at} debian {dot} org)) and possibly other RcppCore members

Clone this wiki locally