Approaches to Interpreter Composition
arXiv:1409.0757 · doi:10.1016/j.cl.2015.03.001
Abstract
In this paper, we compose six different Python and Prolog VMs into 4 pairwise compositions: one using C interpreters; one running on the JVM; one using meta-tracing interpreters; and one using a C interpreter and a meta-tracing interpreter. We show that programs that cross the language barrier frequently execute faster in a meta-tracing composition, and that meta-tracing imposes a significantly lower overhead on composed programs relative to mono-language programs.
33 pages, 1 figure, 9 tables