Tracing and partial evaluation have been proposed as meta-compilation techniques for interpreters to make just-in-time compilation language-independent. They promise that programs executing on simple interpreters can reach performance of the same order of magnitude as if they would be executed on state-of-the-art virtual machines with highly optimizing just-in-time compilers built for a specific language. Tracing and partial evaluation approach this meta-compilation from two ends of a spectrum, resulting in different sets of tradeoffs. This study investigates both approaches in the context of self-optimizing interpreters, a technique for building fast abstract-syntax-tree interpreters. Based on RPython for tracing and Truffle for partial e...
AbstractMany users and companies alike feel uncomfortable with execution performance of interpreters...
Compiler writers usually follow some known rules of thumb on the effectiveness of optimizations when...
Specialization of programs and meta-programs written in high-level languages has been an active are...
Tracing and partial evaluation have been proposed as meta-compilation techniques for interpreters to...
Tracing and partial evaluation have been proposed as meta-compilation techniques for interpreters. T...
Abstract. In this paper, we compose six different Python and Prolog VMs into 4 pairwise compositions...
This artifact accompanies our paper AST vs. Bytecode: Interpreters in the Age of Meta-Compilation to...
We present techniques of compiling a reflective concurrent object-oriented language, ABCL/R3, by usi...
This document presents our main contributions to the field of compilation, and more generally to the...
International audienceRuntime metaprogramming enables many useful applications and is often a conven...
International audienceVirtual machines, besides the interpreter and just-in-time compiler optimizati...
: As partial evaluation gets more mature, it is now possible to use this program transformation tech...
DynSem is a domain-specific language for concise specification of the dynamic semantics of programmi...
Tracing just-in-time compilation is a popular compilation schema for the efficient implementation of...
International audienceLanguage interpreters are generally slower than (JIT) compiled implementations...
AbstractMany users and companies alike feel uncomfortable with execution performance of interpreters...
Compiler writers usually follow some known rules of thumb on the effectiveness of optimizations when...
Specialization of programs and meta-programs written in high-level languages has been an active are...
Tracing and partial evaluation have been proposed as meta-compilation techniques for interpreters to...
Tracing and partial evaluation have been proposed as meta-compilation techniques for interpreters. T...
Abstract. In this paper, we compose six different Python and Prolog VMs into 4 pairwise compositions...
This artifact accompanies our paper AST vs. Bytecode: Interpreters in the Age of Meta-Compilation to...
We present techniques of compiling a reflective concurrent object-oriented language, ABCL/R3, by usi...
This document presents our main contributions to the field of compilation, and more generally to the...
International audienceRuntime metaprogramming enables many useful applications and is often a conven...
International audienceVirtual machines, besides the interpreter and just-in-time compiler optimizati...
: As partial evaluation gets more mature, it is now possible to use this program transformation tech...
DynSem is a domain-specific language for concise specification of the dynamic semantics of programmi...
Tracing just-in-time compilation is a popular compilation schema for the efficient implementation of...
International audienceLanguage interpreters are generally slower than (JIT) compiled implementations...
AbstractMany users and companies alike feel uncomfortable with execution performance of interpreters...
Compiler writers usually follow some known rules of thumb on the effectiveness of optimizations when...
Specialization of programs and meta-programs written in high-level languages has been an active are...