> i was sort-of joking, though it's a real option if you want it. > > but seriously, there's no reason for the &%#* lamenting: > > x <- 1 > '<-' = function(x,y) 0 > x <- 2 > # 0 > > .Primitive('<-')(x,2) > x > # 2 > > base::'<-'(x, 3) > x > # 3 > > base::'<-'('<-', base::'<-') > x <- 4 > x > # 4 > > vQ >
I'm still not sure if this can help solve my problem. If I want to overwrite the `<-` operator for a particular type of objects, but preserve its effect for other regular objects (in other words, if I do x<-5 with my new <-, x will be 5 and nothing strange happens), then what should I put in the [ ] below? old <- `<-` old(`<-`, function(x, value){ if (value is my type) do something [ ] # to bind the object value to symbol x: no matter what you do here, the binding/assignment is local within this function?! }) Hope I have made myself clear. Thanks, -- Yi ______________________________________________ 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.