[Rcpp-devel] statement about rcpp11 ?

Romain Francois romain at r-enthusiasts.com
Mon Sep 29 23:08:09 CEST 2014

If you want to have a private conversation with Dirk, just email him directly: edd at debian.org

Now since this is all in the open, let me participate to this. 

Le 29 sept. 2014 à 22:42, Jonathon Love <jon at thon.cc> a écrit :

> Hash: SHA512
> hey dirk,
> i was wondering if you could let us know your thoughts about Rcpp11.
> i've found it a little bit confusing, because at first i thought people
> were just talking about Rcpp (which happens to be at version 0.11).

I also found it confusing that Rcpp's version became 0.11.*
I guess we had it coming after 0.10.* since apparently for some reason it is trapped in the 0.* land forever

> then
> i thought it was a newer version of Rcpp, but of course it isn't. then
> i thought it was a version of Rcpp for use with C++11
> (because presumably Rcpp doesn't support C++11... but of course it does).

Yes you can use C++11 with Rcpp, and for that matter you can even use C++11 without Rcpp. You can do arcane .Call stuff on the outside and have C++11 code inside. 

Now Rcpp11 is a complete redesign, focusing on C++11, it means that it actively uses C++11, as opposed to let you use it. 

It has also allowed us to step back from mistakes that were made along the way when developing Rcpp such as (this is just one example) complexity of too many undocumented constructors for *Vector classes. Doing this is impossible with Rcpp which has to carry the weight of dependency. 

> so the name alone appears to have been chosen to maximise confusion

Not at all. Rcpp11 stands for R and C++11. 

From my point of view, the confusion comes from the versioning of Rcpp. 

Perhaps Rcpp will hit version 0.14.* when I start working on Rcpp14 soon. How convenient would that be. 

> but
> i was wondering what you thought about it technically. do you see it
> replacing ol' Rcpp, and new projects should make an effort to use it
> instead? do you see Rcpp being retired as a result? what is the future
> of repp?

They will coexist, are maintained by two different persons who have different goals. And that's fine. 
Right now CRAN makes it difficult to depend on Rcpp11, but we have implemented a workaround, so the next version of Rcpp11 (to be released when the next R is released) will be CRAN proof. 

Just use whatever version is best for your needs. I'm spending a great deal of energy and time (although perhaps not lately) on developing Rcpp11, but I still use Rcpp for projects for which it makes sense, e.g. dplyr uses Rcpp. 

> perhaps these might make good FAQ entries.
> with thanks
> jonathon

More information about the Rcpp-devel mailing list