Building JIT Compilers For Dynamic Languages With Low Development Effort
Building high performance virtual machines for dynamic languages usually requires significant development effort. They may require an interpreter and one or more compilation phases to generate efficient code. In addition, they may require several static analyses using custom intermediate representation(s). This paper presents techniques used to implement virtual machines for dynamic languages with relatively low development effort and good performance. These techniques allow compiling directly from the abstract syntax tree to target machine code while still enabling useful optimizations and without using any intermediate representation. We have used these techniques to implement a JIT compiler for Scheme. We show that performance of the generated code competes with the code generated by mature Scheme implementations.
Sun 4 NovDisplayed time zone: Guadalajara, Mexico City, Monterrey change
15:30 - 17:05 | |||
15:30 25mResearch paper | Building JIT Compilers For Dynamic Languages With Low Development Effort VMIL DOI | ||
15:55 20mTalk | Twopy: A Just-In-Time Compiler For Python Based On Code Specialization VMIL | ||
16:15 25mResearch paper | Towards Compilation of an Imperative Language for FPGAs VMIL Baptiste Pauget École Normale Supérieure, David J. Pearce Victoria University of Wellington, Alex Potanin Victoria University of Wellington DOI Pre-print File Attached | ||
16:40 25mResearch paper | Two Decades of Smalltalk VM Development VMIL Eliot Miranda Cadence Design Systems, Clément Béra Sofware Languages Lab, Vrije Universiteit Brussel, Elisa Gonzalez Boix Vrije Universiteit Brussel, Dan Ingalls DOI |