JVM
Javaのバイトコードを実行するランタイム。スタックベースの仮想マシンで、JITコンパイル、ガベージコレクション、クラスロードを備える。Java、Kotlin、Scala、Clojure、Groovyの土台である。
JVMの仕様は公開されているため、実装は複数ある。標準のOpenJDK HotSpot、多言語対応でAOTも使えるGraalVM、フットプリントの小さいEclipse OpenJ9(IBM)、商用のAzul Zulu/Primeなどだ。近年はGCが劇的に改善され、G1からZGC、Shenandoahへと進んで停止時間は1ミリ秒未満になった。Project Loom(Java 21、2023年)が仮想スレッドを追加し、今後はProject Valhallaが値型をもたらす予定である。