< architecture > A virtual machine implementation approach, used to speed up execution of byte-code programs. To execute a program unit such as a method or a function , the virtual machine compiles its bytecodes into (hardware) machine code. The translated code is also placed in a cache, so that next time that unit's machine code can be executed immediately, without repeating the translation.
This technique was pioneered by the commercial Smalltalk implementation currently known as VisualWorks , in the early 1980s. Currently it is also used by some implementations of the Java Virtual Machine under the name JIT (Just In Time compilation).
[Peter L. Deutsch and Alan Schiffman. "Efficient Implementation of the Smalltalk-80 System", 11th Annual Symposium on Principles of Programming Languages, Jan 1984, pp. 297-302].
(2002-04-15)