Issue #4168 has been updated by Kurt  Stephens.


Progress: https://github.com/kstephens/ruby/commit/8058894024c9bac07e6e44c91f5984a1e347074f

* Refactored MRI-specifics out of tests.
* Implemented SoftReference heuristics in Ruby *and* C.
* Trivial HardReference class ignores ref_queue argument, class is probably pointless anyway.

Charlie:

I think it makes sense to move my ext/reference code into a fork of Brian's ref gem and port gc_api.c to MRI 1.8, so the supporting change in MRI 1.9 and 1.8 is minimal.
This should also make it easier for you to test a JRuby impl.  A WeakReference port for Rubinius should be trivial.

I need early adoption of gc_api.c to keep moving forward; 
Matz can adopt Reference::* into MRI core whenever he feels it has matured.

- Kurt

----------------------------------------
http://redmine.ruby-lang.org/issues/show/4168

----------------------------------------
http://redmine.ruby-lang.org