Greiner, S. “Run-Time Manipulation of Programs in a Statically-Typed Language”. Informatica 33 (3). https://puffbird.ijs.si/index.php/informatica/article/view/256.