[Rd] reference class internals

Hadley Wickham h.wickham at gmail.com
Thu Jan 9 23:43:44 CET 2014


It's a bit of a simplification, reference classes are wrappers around
environments.  So if modifying a value in an environment would create
a copy, then modifying the same value in a reference class will also
create a copy.

The situation with modifying a vector is a bit complicated as it will
sometimes be modified in place and sometimes be duplicated and
modified (depending on whether its NAMED attribute is 1 or 2, and
exactly how you're modifying it).

Hadley

On Thu, Jan 9, 2014 at 4:33 PM, Norm Matloff <matloff at cs.ucdavis.edu> wrote:
> I have a question about reference classes, which someone here
> undoubtedly can answer immediately, saving me hours of wading through
> indecipherable internal code. :-)  Thanks in advance.
>
> Reference class data is mutable, fine, but in what sense?  Is it really
> physical,  or is it just a view given to the programmer?
>
> If for instance I have vector as a field in a reference class, and I
> change one element of the vector, is it really true that the change is
> guaranteed to be made in-place, no copying, no memory reallocation etc?
>
> Norm
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel



-- 
http://had.co.nz/



More information about the R-devel mailing list