RubyのJIT
Ruby JIT
って何者なんだろう。
プログラムの実行中に、Rubyのソースコードを読んで、何にコンパイルするの?
RubyはJust-In-Time(JIT)コンパイラという機能を備えており、これを有効化すると実行時に機械語を生成して様々な最適化が行なわれ、実行が高速になります。
Ruby 3.3 YJITのメモリ管理とRJIT
ということは、Rubyのソースコードを読んで、機械語にコンパイルするの?(コンパイルってそういうものだけど……)動的なRubyでそれはすごい気がする。bindingが分かっていればかいけるのか……?
機械語にするだけじゃなくて、最適化がポイントなのかな
YJITはコンパイルに対応していないRubyコードに遭遇すると諦めてインタプリタにフォールバックするようになっており
とあるので、コードを見てコンパイルできるか判断しているのか。