Publications by romain francois
Rcpp11 conference marathon
This is going to be a busy start of summer for me and Rcpp11. I will start by a talk at the 3rd rencontres R in Montpellier on June 26th. Then, over to Bressanone in the italian alps for DSC2014 where I’ll give another talk on the next day (June 27th). Then, accross the ocean for a 3 hours Rcpp11 tutorial at http://user2014.stat.ucla.edu/ o...
808 sym 6 img
R function call overhead in Rcpp(11)
Some people have asked for some facts about the differences between Rcpp11 and Rcpp, here is just one nugget. If you’ve been following the Rcpp world for some time, you might have seen comments like: Calling an R function from C++ is expensive. The need The reason why it is expensive is that we have to deal with two concurrent systems for e...
3633 sym R (1767 sym/4 pcs) 8 img
Can Rcpp fuse ?
One of the features of Rcpp11 people seemed to like during useR is the fuse function. fuse is somewhat similar to the c function in R. For the purpose of this post, let’s simplify what fuse does, and just say that it takes several compatible vectors and fuses them together into one. // some vectors NumericVector a = {1.0, 2.3}, ...
2425 sym R (347 sym/2 pcs) 2 img
Rcpp11 t-shirt sightseeing
While we wait for CRAN to process the release of Rcpp11 3.1.1, here are some news about the Rcpp11 t-shirt. With more than 40 attendees, the Rcpp11 tutorial was a success. I managed to distribute almost all t-shirts I printed for the occasions. I only have a few S sized men t-shirts left, but all women/S and men/M have found an owner. During t...
1304 sym 16 img
Rcpp11 3.1.1
R 3.1.1 was released a few days ago, and as part of the policy we are trying to follow for Rcpp11 releases, here is Rcpp11 3.1.1. Sorry for the 12 days delay, but I was away in California, and Rcpp11 travelled with me, so I could not properly test the package. I have now tested the package extensively on these combinations: OS X/clang at home. ...
3646 sym
A package about nothing
nothing is a package about nothing. The idea is that when you do require(nothing) you express that you don’t need anything, and therefore nothing assumes you are fine just using the base package, so it detaches all other packages. > loadedNamespaces() [1] "base" "datasets" "devtools" "digest" "evaluate" "graphics" [7] "grDevic...
684 sym R (405 sym/1 pcs) 2 img
a:class <- b
Usually in strongly typed languages, like C++, the type of a variable comes before the variable, e.g.: int x = 23 ; So x is declared of type int and assignd the value 23. Now, some languages do things differently, e.g. in julia: x::Int8 = 1000 or go : var i int = 1 ; So here is a curious thing we can do with R: `:<-` <- function(x,...
1007 sym R (578 sym/7 pcs)
yocto benchmarking
Let’s start with a picture of a bench, as we’re going to do some benchmarking. One of my take home message from useR was that we are going to have to do things in parallel. JJ set the motion with the RcppParallel package. The inceptive example for RcppParallel was about calculating the sum from a numeric vector. The article shows some nice...
2894 sym R (4045 sym/1 pcs) 10 img
Pro Grammar and Devel Hoper
I’ve been teasing about this post for some time now. My next blog post is “Pro Grammar and Devel Hoper”. And this not just an empty pun. Stay tuned.— Romain François (@romain_francois) August 3, 2014 @stefanbache another teaser. https://t.co/i2ubfOyjIO iris >> filter( Sepal.Length > 7 ) iris |> filter( Sepal.Length > 7 )— Romain Fran...
7720 sym R (982 sym/8 pcs) 6 img
Rcpp11 3.1.2.0
Rcpp11 3.1.2.0 was released to CRAN, as the ultimate C++11 companion to R 3.1.2 on which it depends. The NEWS extract follows: # Rcpp11 3.1.2 * New `wrap` implementation for `std::tuple<Args...>` (#195) * `colnames` and `rownames` setters for matrices (#210). * Most sugar functions are now processing the expression in parallel. * Forbidde...
2670 sym R (1414 sym/4 pcs) 2 img