Ruby 3x3 Optimization Ideas¶
-
make the garbage collector use an established API, so we can change it out more easily with a gem. This would permit trying out new garbage collector implementations more easily. Suggested by Koichi.
-
use per-class counter for method cache invalidation so that defining a new method won't invalidate all the method caches. Suggested based on a post by Aaron Patterson.
-
Per-class method cache. Maybe per-class/subclass counter instead of just one globally.
-
Shyouhei's branch is identifying certain statements as not having side effects. Perhaps we can eliminate the evaluation of an ||= right-hand side in some cases?
-
$LOAD_PATH pre-scan like Shopify's BootSnap - good for large applications with hundreds of gems in the path.