JITコンパイラ
Just In Time とは「ぎりぎりの時」「ちょうどその時」という意味で、その場でコンパイルすることを示す。(元々はトヨタ自動車のカンバン方式の英訳から来ている模様。 https://ja.wikipedia.org/wiki/ジャストインタイム生産システム )
CPUの能力が上がり、コンパイル時間も十分短くなっているため、インタプリタで逐次処理するよりも高速化可能になってきた。以前はコンパイルに時間がかかっていたため、その都度コンパイルしてから実行というのはナンセンスだった。
キャッシュでコンパイル結果を保持することで、さらに高速化できる。
JITコンパイラの利点
コンパイル結果はその環境固有のもので良い。(配布する必要がない)
環境に合わせて最適化可能である。
ソースがそのまま実行環境に提供されるので可読性が高い。
逆に言えば、リバースエンジニアリングされたくない場合には望ましくない。→難読化