English

Generic Reduction-Based Interpreters (Extended Version)

Programming Languages 2025-08-18 v1

Abstract

Reduction-based interpreters are traditionally defined in terms of a one-step reduction function which systematically decomposes a term into a potential redex and context, contracts the redex, and recomposes it to construct the new term to be further reduced. While implementing such interpreters follows a systematic recipe, they often require interpreter engineers to write a substantial amount of code -- much of it boilerplate. In this paper, we apply well-known techniques from generic programming to reduce boilerplate code in reduction-based interpreters.

Keywords

Cite

@article{arxiv.2508.11297,
  title  = {Generic Reduction-Based Interpreters (Extended Version)},
  author = {Casper Bach},
  journal= {arXiv preprint arXiv:2508.11297},
  year   = {2025}
}