<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">> Nice document but it would be good to distinguish between the C<br>
> interfaces -- the .C interface may not be fully general; however, it<br>
> is adequate for a lot of numerical work such as writing the objective<br>
> function and gradient in optimization routines and is not painful at<br>
> all.<br>
<br>
</div>I guess my argument would be that if you know Rcpp, you don't need to<br>
know the C interface. If you know the C interface, you're still better<br>
off learning Rcpp if you want to tackle anything more complicated.<br>
<br>
i.e. if you only have the time to learn one of Rcpp, .C, or .Call,<br>
you're better off learning Rcpp.<br>
 That's not to say .C or .Call are not useful to know, but they're<br>
probably not that useful to learn unless you already known how to<br>
program in C.  If you don't know how to program in C++, it's still<br>
worthwhile to learn Rcpp.<br>
<div class="im HOEnZb"><br>
Hadley<br clear="all"></div></blockquote><div><br>+1  Nicely said.  Maybe I'm rare (an old guy thing) in that I'm (originally) a C guy.  But I'll keep at it (C++ with Rcpp) and hopefully get better. <br></div>
</div><br>-- <br>John W. Emerson (Jay)<br>Associate Professor of Statistics, Adjunct, and Acting Director of Graduate Studies<br>Department of Statistics<br>Yale University<br><a href="http://www.stat.yale.edu/~jay" target="_blank">http://www.stat.yale.edu/~jay</a><br>