Hi Charlie, On Wed, Jan 6, 2010 at 9:58 AM, Charles Oliver Nutter <[email protected]> wrote: > Ok, it's time to start biting off a big change: we need to make the > JRuby runtime be classloader-global (i.e. static).
Do you already have this new JRuby runtime in somewhere? If you have, I want to start using classloader-global runtime for emedding API. Current thread safe model works under a limited case. I think I should rethink thread safe concurrent evaluations from its design. The idea of classloader-global and classloder subdomain could be the answer. Besides, like Kevin's case (jruby -> rails -> java(embedding) -> ruby), we need static runtime in some cases. There might be issues to be solved such as states that current runtime has, but I think we'll be able to find the best way to manage them. -Yoko > > There's many reasons for this: > > * You won't have to pass a Ruby instance into object construction > * Serialization will work, since it will just be able to grab the > classloader-global Ruby instance when constructing > * All core classes will be able to start inline caching calls back to > Ruby (where they do almost *no* caching right now) > * Replacing arbitrary pieces of Java code with Ruby code will be *much* easier > > And the list goes on. > > Perhaps the most important person I'd like to see in this discussion > would be Yoko Harada, since it may be possible to hide all this behind > RedBridge and the 223/BSF engines. But I'd like to hear from others > interested in the above features/changes, or from anyone with concerns > about how this change might affect their code. > > For the record, this will almost exclusively impact only users > embedding JRuby or calling into JRuby from non-Ruby code. Users > running plain-old-Ruby probably will never see any real impact. > > - Charlie > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > > --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email
