Retrofitting JIT Compilers into C Interpreters
C interpreters are a common language implementation technique and the basis for
the reference implementations of languages such as Lua, Ruby, and
Python. Unfortunately, C interpreters are slow, especially compared to
language implementations powered by JIT compilers. In this post I’m going to show
that it is possible to take C interpreters and, by changing a tiny proportion
of code, automatically turn them into JIT compiling VMs (Virtual Machines)1. This offers a point in the language performanc...
Read more at tratt.net