Is there a way to make 2+2 = 5 without making 4 = 5? So make so that everything else behaves as normal except when 2+2 is evaluated.,(reply>), @stdarg That's interesting. Thanks! Perhaps that sort of thing can be more easily done with JavaScript?,(reply>), @the guy you could do it with a custom jvm that has a modified implementation of the iadd bytecode... if a == 2 and b == 2 then  5 else a + b. That would be the jvm "hardware" equivalent of the old pentium fdiv bug. I don't think it could be done via reflection.,(reply>), @stdarg yes and I'm asking if there is a way to only change the evaluation of 2+2 and not just point 4 to 5,(reply>), This doesn't change the evaluation of 2+2=4, in fact without it this trick wouldn't work. He's changing the integer cache which associates a primitive array index to a preconstructed object that represents that integer. So the code is doing 2+2=4, then looking up an index of 4 - (-128) = 132. But cache[132] has been changed to point to cache[133] which is the preconstructed integer for 5.