Hi Joseph / Hi Dirk / Hi Klaus,
I've been writing to Joseph as a "final user" of QL-Swig on R, exposing what I experienced.
As a quant I believe R-Swig and Rcpp are the most promising projects for doing "heavy" mathematical finance at the top level and you guys are doing a superb job, the idea to join your forces is exciting and it could results in a very good QL solution for R quants.
The following is my feeling about Swig/Rcpp mix.
The main advantage by using Swig is that QL objects get not destroyed (as it happens in RQuantLib). A very simple example: suppose one builds a interest rates curve, then frequently one needs to add a term structure of spreads over that curve, therefore the initial "curve" object needs to be available.
For doing monte carlo pricing R-Swig is too slow and one is forced to switch to C++.
To give the user a smooth experience I think that Swig+Rcpp+Inline is the right answer.
IMO people doing finance would prefer typing directly C++, here the top would be
- Write C++ inside R source and get a smooth compilation through Inline enhanced with Swig to generate the wrap (for pass/get C++ objects and SEXP structs)
- Link against Rcpp library to program inside C++ almost like in R
- Having the possibility to parallelize code (es. using openmp)
I think the real core for Swig-Rcpp collaboration is point 1.
I'd like to know what you think about, thanks.