Not sure why they don't simply compile to Java bytecode to start with. It doesn't seem like they're making use of runtime type profiles here a la Self.
It still seems to me that JIT compilation is needless, unless your compiler is as smart as Self's. One should simply compile to the desired target language and avoid warmup costs.
The JRuby developers have spent a lot of time doing performance measurements, implementing optimizations and trying out different approaches. You're just throwing in your two cents based on second-hand knowledge of an obsolete language implementation...
Indeed, I don't know about JRuby. I know about Scheme. There is no fast Scheme that JIT-compiles, that I know of. All the fast Lisp compilers that I know compile ahead-of-time.
If you know why they did this, pray tell :) As a language implementor yourself, you probably have a good feel for the cost accounting.
4 comments
[ 2.1 ms ] story [ 17.8 ms ] threadIt still seems to me that JIT compilation is needless, unless your compiler is as smart as Self's. One should simply compile to the desired target language and avoid warmup costs.
If you know why they did this, pray tell :) As a language implementor yourself, you probably have a good feel for the cost accounting.