Past Meetup

"Official" BARUG Bonus May Meeting

This Meetup is past

150 people went


Hadley Wickham and J.J. Allaire of RStudio are visiting the Bay Area "for one night only" so we have scheduled a bonus BARUG meeting for May.


6:30 PM Networking and pizza
7:00 Announcements
7:10 Talks begin

Abstracts for Hadley's and J.J.'s talks follow.

# R packages are easy!
Hadley Wickham

R packages have a reputation for being complex unwieldly beasts that
need decades of study to master. In this short talk, I'll show you
that you when you have the right tools, R packages are easy; so easy,
in fact, that they should be your default whenever you combine code,
data or documentation. Packages are great just for yourself, and
they're also great if you want to share. Sharing a package requires a
little more work so that it works everywhere (not just on your
computer), but the right mindset and the right tools make easy and a
small additional time investment makes it possible for you to share
you work with the world through github or CRAN.

# Seamless C++ Integration with Rcpp Attributes
JJ Allaire

Attributes are annotations added to C++ source files to provide
additional information to the compiler . __Rcpp Attributes__ are a new
feature that provides a high-level syntax for declaring C++ functions
as callable from R and automatically generating the code required to
invoke them. The motivation for attributes is several-fold:

* Reduce the learning curve associated with using C++ and R together
* Eliminate boilerplate conversion and marshaling code wherever possible
* Seamless use of C++ within interactive R sessions
* Unified syntax for interactive work and package development

Rcpp supports attributes to indicate that C++ functions should be made
available as R functions, as well as to optionally specify additional
build dependencies. The C++ file can then be interactively sourced
into R using the `sourceCpp` function, which makes all of the exported
C++ functions immediately available to the interactive R session. As a
result of eliminating both configuration and syntactic friction, the
workflow for C++ development in an interactive session now
approximates that of R code: simply write a function and call it.

This talk will cover the motivation for and implementation of
attributes as well as review many practical examples of their use.