3 ms·
I haven't read any of the code to see how it compares, but this work reminds me of research from Nada Amin & Tiark Rompf on "towers of interpreters", where a st
by abeppu 2y ago
I haven't read any of the code to see how it compares, but this work reminds me of research from Nada Amin & Tiark Rompf on "towers of interpreters", where a stack of meta-circular interpreters uses some explicit staging operations that make it possible to specialize for the interpreter code in a way that removes overhead.
https://www.cs.purdue.edu/homes/rompf/papers/amin-popl18.pdf https://www.cs.purdue.edu/homes/rompf/papers/amin-popl18.pdf
- cipherself 2y agoThis in turn, is based on black[0] which is an extension to scheme, which in turn is inspired by [1] [0] http://pllab.is.ocha.ac.jp/~asai/Black/ http://pllab.is.ocha.ac.jp/~asai/Black/ [1] https://www.lirmm.fr/~dony/enseig/MR/notes-etudes/ReflectiveInterpreter.pdf https://www.lirmm.fr/~dony/enseig/MR/notes-etudes/Reflective...
- almostgotcaught 2y agoThere's no relationship - tower of interpreters is related to lightweight modular staging https://dl.acm.org/doi/10.1145/1868294.1868314 https://dl.acm.org/doi/10.1145/1868294.1868314 This is just lisp or more broadly "I'm an interpreted language" since you know... Python has access to much of its interpreter runtime too . And if you think you can't do wild stuff in Python you can (hint: you can use ctypes on libpython to do way more than you think you can do).