Hello Charles,

CM> A generational GC would be great.  There has been talk of including one
CM> in the next version of the Ruby interpreter.  However C extensions also
CM> pose a problem here as well - it seems creating a write barrier that
CM> works with C libraries not written originally with Ruby in mind will be
CM> very difficult/slow.

This shouldn't be a problem. As long as you don't pass ruby values
into the c libraries as 'user data' the data space can be separated
very well. If you must pass some 'user data' into the lib simply use
a proxy pointer, an keep the ruby object into a gc known address space.
A hashtable with all ruby objects referenced from the c lib is a good
idea here.

A little bit more overhead and it breaks all larger current binary
extensions, but i think we must face the fact that Ruby 2.0 will give
as a lot of code breaks anyway.

-- 
 Best regards,                        emailto: scholz at scriptolutions dot com
 Lothar Scholz                        http://www.ruby-ide.com
 CTO Scriptolutions                   Ruby, PHP, Python IDE 's