Funding body: | Shopify / Royal Academy of Engineering | Funding amount: | £754,085 Expenses |
Start date: | 2023-03-23 | End date: | 2027-03-22 |
Principle investigator(s): | Laurence Tratt | Co-investigator(s): | - |
Collaborator(s): | Research staff: | - | |
Other details: |
There have been many attempts (open-source and commercial) to manually add JIT compilers to standard VMs (e.g. Ruby and, in particular, Python). Despite considerable investments of time and resources, the fearsome scale and complexity of programming language VMs has meant that none has succeeded.
This Research Chair aims to cut this Gordian knot by taking an idea from state-of-the-art JIT compilers and applying it to standard VMs: "meta-tracing" automatically creates a JIT compiler from a normal VM. By applying it to standard VMs, we sidestep the problem of manually creating a JIT. However, meta-tracing has previously been applied to custom-written VMs: applying it to existing VMs brings with it new research and engineering challenges that this Research Chair will tackle.