[Ironruby-core] Code Review: NoStaticSites4
curth at microsoft.com
Wed Nov 26 15:50:52 EST 2008
From: Tomas Matousek
Sent: Wednesday, November 26, 2008 9:29 AM
To: IronRuby External Code Reviewers
Cc: ironruby-core at rubyforge.org
Subject: Code Review: NoStaticSites4
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.
More information about the Ironruby-core