[Rcpp-devel] Making objects in the C++ "side" persistent

Jiqiang Guo guojq28 at gmail.com
Thu Mar 20 19:40:28 CET 2014


RStan doesn't do anything to persist any c++ object.  What's done is to
save the binary file created using package inline in an R object so it can
be reused without recompiling c++ code.  So what is in cxxfunplus might not
be related.

Jiqiang
On Mar 20, 2014 11:53 AM, "Dirk Eddelbuettel" <edd at debian.org> wrote:

>
> On 20 March 2014 at 18:39, F.Tusell wrote:
> | I have been reading "Exposing C++ functions and classes with Rcpp
> | modules" and find the idea interesting. However, I read in Section 5
> | that objects created
> | using an external pointer are not persistent from session to session.
>
> Yes. The memory behind that pointer is not guaranteed...
>
> | For my purposes, I think I could use S4 objects that make C++ copies of
> | themselves at creation time, accessible via an external pointer. All
> | methods would then make use of the C++ copies for speed, and at the end
> | of the session the S4 copies that live in the R side would be saved.
> |
> | I am thinking of writing code which at the start of a session checks all
> | (S4) objects in the workspace and recreate the C++ copies. Is this the
> | way to go? Has someone with a similar problem devised an alternative
> | solution? If anyone can offer some hints (or better yet, point to some
> | package that I can use for inspiration) I would  be grateful.
>
> The Stan folks also did something about this in an extension / rework of
> cxxfunction in inline -- see their package cxxfunplus on CRAN. (Which I
> haven't used so I can't help with details -- but it help you or point you
> the
> right way.)
>
> Dirk
>
> --
> Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com
> _______________________________________________
> Rcpp-devel mailing list
> Rcpp-devel at lists.r-forge.r-project.org
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/rcpp-devel/attachments/20140320/b1dc1d9c/attachment.html>


More information about the Rcpp-devel mailing list