generated at
JIT compile
Just In Time Compile
プログラムを動的、つまり実行中にコンパイルする










長所



短所
コンパイル処理のコストが実行時にかかる
メモリ上の、
コンパイラ自身のプログラムの存在による消費
IR (中間表現)などの中間表現が存在することによる消費
JITコンパイラの場合特に起動時に処理が集中してしまう
インタプリタとJITコンパイラを併用することで、解決する
つまりHotSpotコンパイラを利用する







tutorial



↓ほぼここのページで書いてることを抜き出してきただけなので、ちゃんと調べてまとめよう。
少しの間、インタプリタなどで動作させる
変数に代入される値を観察し、型システムに関する統計情報を集める
これと、「1つの変数には同じ種類のデータが代入される傾向にある」というヒューリスティックを利用して型を推定
推定がある程度出来たら、ネイティブコードへ変換する

課題
頻繁に使われるものしかネイティブコードにならない
型情報を推定するリードタイムが必要
型の推定に失敗することがある


参考
monadで作る