On Thu, Jul 30, 2009 at 12:01 PM, Martin Morgan<mtmor...@fhcrc.org> wrote: > S4 objects do not have the semantics of environments, but of lists (or of > most other R objects), so it is as meaningful to ask why identical(s1, s2) > returns TRUE as it is to ask why identical(list(x=1), list(x=1)) returns TRUE.
Thanks for the clarification. For some reason, I thought that S4 objects (unlike S3 objects) were objects in the conventional computer science sense, that is, mutable. Compare proto objects, which *are* objects in the usual sense: > proto1 <- proto(expr= {x=23}) > proto2 <- proto1 > proto1$x <- 45 > proto2$x [1] 45 # proto1 and proto2 are the same object > setClass("test",representation(a="logical")) [1] "test" > s41 <- new("test") > s42 <- s41 > s...@a <- TRUE > s...@a # s41 and s42 are different objects logical(0) It would thus perhaps be clearer to speak of S4 "values" rather than S4 "objects". -s ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.