4 ms·
ParcPlace’s Smalltalk VMs (PS and HPS) were JIT VMs in the same period (if not a bit earlier).
by pinewurst 7y ago
ParcPlace’s Smalltalk VMs (PS and HPS) were JIT VMs in the same period (if not a bit earlier).
- eternalban 7y agoquote: "Before I started down the path of making Java fast, I was told "you can't JIT code that will touch a static compiler" . Afterwards: all new languages start with the assumption "we can JIT this" in the implementation." - Cliff Click's LinkedIn (1997-2002 @ Sun Micro)
- jecel 7y agoPS and HPS did indeed implement the dynamic compilation technologies created by L Peter Deutsch and Allen Shiffman at Xerox Parc. Self 1 and 2 were even fancier JITs by Craig Chambers, but Self 3 (and 4) by Urs Hölzle implemented adaptive compilation which uses an initial simple compiler for all called code and then a second fancy compiler for the hot spots. The execution of the code from the first compiler not only measured execution to find the hot spots but also accumulated type information to make the second compiler simpler (compared to the type inference in the Self 2 compiler). I gave a talk about this a few months ago: "Adaptive Compilation" - video: https://www.youtube.com/watch?v=TO53xFACfuQ https://www.youtube.com/watch?v=TO53xFACfuQ pdf slides: http://www.merlintec.com/download/2019_slides_jecel_fast2v2.pdf http://www.merlintec.com/download/2019_slides_jecel_fast2v2.... open office slides: http://www.merlintec.com/download/2019_slides_jecel_fast2v2.odp http://www.merlintec.com/download/2019_slides_jecel_fast2v2.... As the name of the Sun Java VM indicates, it is an adaptive compiler like StrongTalk and Self 3/4.