On Oct 14, 2010, at 2:25 PM, Ondej Blka wrote:

> Hello
> 
> Ideas from static typing thread correspond to ideas what to write as my thesis.
> I have some ideas how today vm`s could be improved on x64. Now most of time x64 has idle cores so we could use them to: 
> 
> A shift from JIT to what I call continuous optimalization. JIT has slow startup time and generated code is not as fast as it could be.
> While program runs we can spend on spare core unlimited time compiling better versions. We will save optimized versions on disk.
> This allows time comsuming optimalizations and also previously impossible optimalizations.
> 
> Following optimalizations have this motto We can assume that sky is blue until somebody tell us its green.
> Ruby is dynamic so anything can happen. But in 99% of cases it won't occur. In 1% cases we know how to fix it
> Example is changing method body. Usually it doesn't happen. But if its changed we fix it by reverting all optimalizations that used given method.

You should look at JRuby and Rubinius. JRuby runs on the Java VM which already has most of the optimization capabilities that you listed. Rubinius has its own C++ VM and uses LLVM for JIT and other optimizations.

http://jruby.org

http://rubini.us

Either one of those projects would probably be a good start for you to experiment for your thesis.

cr