Skip to content
Book Open access

An Incremental Approach to JIT Construction

Aug 2026 · Proceedings of the 27th ACM SIGPLAN International Workshop on Scheme and Functional Programming · 0 citations · 11 references

TL;DR

This paper presents an incremental, classroom-scale approach to building a JIT compiler in manageable steps that successfully supports a Read-Eval-Print Loop and a first-call specialization mechanism.

Abstract

Just-in-time (JIT) compilation has become a common tool for language runtimes. JIT compilers have a reputation for being complex, leaving a pedagogical gap between foundational Ahead-of-Time (AOT) concepts and dynamic code generation. This paper presents an incremental, classroom-scale approach to building a JIT compiler in manageable steps. By contrasting an AOT and a JIT backend, we expose core dynamic concerns, including executable buffers, persistent interactive state, mutation, and runtime type optimizations. The result is a minimal yet realistic educational JIT that successfully supports a Read-Eval-Print Loop (REPL) and a first-call specialization mechanism.

Read PDF

Similar papers

Lazarus: Where Compilers Meet Education

This paper presents both the source language, and its register-based virtual machine, while discussing an often neglected feature in compiler design: the incremental parser.

R. Gonçalves, P. Henriques, J. Ramalho et al. · 0 citations

Towards Ahead-of-Time Meta-Compilation of Dynamic Languages With an Extensible Type Analysis

This position paper presents first ideas for a framework with an extensible core analysis that will enable us to extract type flow semantics from an interpreter implemented in a meta-compilation system to achieve better-than-interpreted performance for programs with reasonable behavior.

Christoph Aigner, Stefan Marr · 0 citations

Leveraging Copy-and-Patch JIT Compilation for Low-Overhead Dynamic Program Analysis

This paper explores copy-and-patch as a foundation for dynamic program analysis, and implements four analyses on top of an existing copy-and-patch JIT for R: code instrumentation, code coverage, performance profiling, and native debugging.

Martin Kocourek, Filip Křikava, Jan Vitek · 0 citations
Book Open access Sep 2026

Fun Optimizations for eBPF Programs and How to Enable Them

An extension to the compilation process with a post-verification optimization phase to address the eBPF verifier limitation and measure the performance overhead introduced by these restrictions.

Farbod Shahinfar, Aurojit Panda, Gianni Antichi · 0 citations

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.