generated at
VM
Virtual Machine、仮想機械。JVM (Java Virtual Machine)、 LLVM などが有名である。
原理的に Stack Machine のことを指す。Stack 上の機械であるため、VM言語としては、主に後置記法(Reverse Polish 記法)言語が用いられる。


VM方式の言語処理系
JVM系言語 (Java, Scala, Kotlin, Clojure, Groovy等)
バージョン1.8まではASTを逐次実行していたが、バージョン1.9からVM方式になった。このVMにはYARVという名前が付いている。Yet Another Ruby VMの略。
レジスタベースのVMを採用している。https://www.lua.org/doc/jucs05.pdf
Smalltalk
1976年代半ば頃のバージョン(Smalltalk-76)から Pascal の UCSD p-System を参考に、それまで(Smalltalk-72)のソースコードの逐次評価方式から VM方式に切り替えられた。
1984年に初の実用的JITが考案された。https://dl.acm.org/doi/10.1145/800017.800542
1990年代半ばに型フィードバックを用いたJITのさらなる高速化技術が Strongtalk 処理系として実用化。後に Java HotSpot VM および(Sunがそれをオープンソース化した後に)JavaScript V8 エンジンの中核技術として転用された。