From: Paul Brannan Date: 2008-12-05T12:25:32+09:00 Subject: [ruby-core:20354] Re: Behavior: autoload calls rb_require() directly On Fri, Dec 05, 2008 at 09:56:19AM +0900, Charles Oliver Nutter wrote: > All these optimizations are predicated on arriving at a static view of > the world at some point during execution. The ability to redefine > Fixnum#+, for example, means that we'll always need (at minimum) a guard > against + being overridden. If it's possible to eliminate the need for > those guards, our the potential for a static worldview expands, the > generated code gets smaller, and performance increases. Instead of using guards you can recompile the world if someone ever does override Fixnum#+. I guess this means slightly higher memory consumption, since some representation of the function needs to be kept around just in case. Paul