Resending this in plain text, after realising the html text hadn't been posted 
(oops).

Hi all,

After an upgrade from R_2.10.1 to R_2.11.1 I am now getting the following error:
Error: evaluation nested too deeply: infinite recursion / options(expressions=)?

This occurs in the initialize method of S4 classes where I was initialising 
attributes eg:
.Object[['realtimeState']] <- list()

I can mostly avoid this new error by altering the code to do:
.Object$realtimeState <- list() OR .obj...@.xdata$realtimestate <- list()

But there are also times when I need to do .Object[realtimeState] <- list(NULL) 
in order to specifically set it to NULL (rather than have it removed) which I 
think is also causing me grief.

My classes all extend .environment and store all non-static data as per above 
(in environment .xData slot) rather than in normal class slots because I am 
able to achieve much quicker execution times without all the copy-on-change 
cost that results from passing these objects containing large amounts of 
slot-based data.


Can anyone provide a reason for the changes that have brought about the 
recursion issue?

Is there a better way to achieve the pass-by-reference style objects I am after?


Thanks

Troy

___________________________________________________________________________

    Australian Antarctic Division - Commonwealth of Australia
IMPORTANT: This transmission is intended for the addressee only. If you are not 
the
intended recipient, you are notified that use or dissemination of this 
communication is
strictly prohibited by Commonwealth law. If you have received this transmission 
in error,
please notify the sender immediately by e-mail or by telephoning +61 3 6232 
3209 and
DELETE the message.
        Visit our web site at http://www.antarctica.gov.au/
___________________________________________________________________________

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to