If we were to have these vectors as part of the shared object rather
than header-only, wouldn't this imply breakage for existing packages
if newer versions of Rcpp changed the Vector template class
implementation (perhaps it inherits new policies, or gains new
methods, or methods change, or becomes templated in a different way)?
This is unlikely but it could happen down the line.

Also, doesn't it imply fewer opportunities for the compiler to inline
code when possible? Part of the reason Rcpp is header only is that it
gives the compiler opportunities to inline all parts when sensible; by
having the Vector class external the compiler can lose the ability to
inline these calls.

Overall I feel fairly uncomfortable moving away from header-only-ness
in Rcpp (although we could be persuaded otherwise) -- reducing compile
time / binary size doesn't seem a convincing enough reason to steer
away from being header only as possible.

On Wed, Oct 15, 2014 at 11:01 AM, Dirk Eddelbuettel <e...@debian.org> wrote:
>
> On 15 October 2014 at 10:28, Kevin Thornton wrote:
> | I should clarify: those git gist are the "git clone" links.  Here are the 
> direct links for viewing:
> |
> | The .h: https://gist.github.com/molpopgen/5180d60689fa8d6cb353
> |
> | The .cpp: https://gist.github.com/molpopgen/c13135659e0b27421a3a
>
> Could you give it a spin and actually try how R CMD check behaves if you do
> that?  And/or check how any of the Rcpp dependents behaves?  Maybe give
> numbers for the gain in compilation you try to achieve?
>
> If it does work we can surely condition via configure on the appropriate
> compiler and version.
>
> Dirk
>
> --
> http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org
> _______________________________________________
> Rcpp-devel mailing list
> Rcpp-devel@lists.r-forge.r-project.org
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
_______________________________________________
Rcpp-devel mailing list
Rcpp-devel@lists.r-forge.r-project.org
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel

Reply via email to