Re: [jruby-dev] Brand new dynamic STI implementation

2007-07-03 Thread dreamhead
2007/7/4, Charles Oliver Nutter <[EMAIL PROTECTED]>: dreamhead wrote: > Hi, Charlie! > > MethodIndex in compiler is worth considering. > > The following code is from invokeDynamic of StandardASMCompiler. > int index = MethodIndex.getIndex(name); > ... > if (index != 0) { >invokeUtilityMethod(

Re: [jruby-dev] Brand new dynamic STI implementation

2007-07-03 Thread Charles Oliver Nutter
dreamhead wrote: Hi, Charlie! MethodIndex in compiler is worth considering. The following code is from invokeDynamic of StandardASMCompiler. int index = MethodIndex.getIndex(name); ... if (index != 0) { invokeUtilityMethod("doInvokeDynamicIndexed", callSigIndexed); In new MethodIndex, index

Re: [jruby-dev] Brand new dynamic STI implementation

2007-07-03 Thread dreamhead
Hi, Charlie! MethodIndex in compiler is worth considering. The following code is from invokeDynamic of StandardASMCompiler. int index = MethodIndex.getIndex(name); ... if (index != 0) { invokeUtilityMethod("doInvokeDynamicIndexed", callSigIndexed); In new MethodIndex, index is always greater

Re: [jruby-dev] Brand new dynamic STI implementation

2007-07-02 Thread Charles Oliver Nutter
dreamhead wrote: Hi, Charlie! You'd better consider thread-safe in getIndex. I thought about that, and can easily add it. It's only making modifications at JRuby startup time, but I suppose there could certainly be multiple JRuby instances starting up at a time. The other option, perhaps be

Re: [jruby-dev] Brand new dynamic STI implementation

2007-07-02 Thread dreamhead
Hi, Charlie! You'd better consider thread-safe in getIndex. Ye Zheng -- Everything is simple! - To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email

Re: [jruby-dev] Brand new dynamic STI implementation

2007-07-01 Thread Charles Oliver Nutter
Charles Oliver Nutter wrote: Charles Oliver Nutter wrote: - use the parent's dispatcher layout in the child dispatcher, so each is a sum of its parents - add in non-fast methods to the STI process, but wrap them with the appropriate framing logic; this would effectively eliminate hash-based di