[Ironruby-core] Code Review: NoStaticSites4

Tomas Matousek Tomas.Matousek at microsoft.com
Wed Nov 26 12:29:11 EST 2008


tfpt review "/shelveset:NoStaticSites4;REDMOND\tomat"

Adds support for SiteLocalStorage to IronRuby binder. This allows us to store arbitrary data in dynamic site rules including other dynamic sites. Using this feature library methods that dynamically invoke other Ruby methods should now take as parameters all sites they're using instead of calling to statically allocated sites. This will allows us to remove runtime checks from the rules and also decreases the degree of polymorphism for the sites (since static sites are used from many places with variety of targets they tend to be megamorphic).

This is first part of the change. Many static sites still remain to be removed. Some library methods (e.g. Range#step) are highly dynamic. Some method need refactoring to reduce the number of sites.

Tomas

-------------- next part --------------
A non-text attachment was scrubbed...
Name: NoStaticSites4.diff
Type: application/octet-stream
Size: 584357 bytes
Desc: NoStaticSites4.diff
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20081126/b8e51cc2/attachment-0001.obj>


More information about the Ironruby-core mailing list