Sun 4 Nov 2018 15:30 - 15:55 at Stuart - II Chair(s): Adam Welc

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 Nov

Displayed time zone: Guadalajara, Mexico City, Monterrey change

15:30 - 17:05
IIVMIL at Stuart
Chair(s): Adam Welc Uber Technologies
15:30
25m
Research paper
Building JIT Compilers For Dynamic Languages With Low Development Effort
VMIL
Baptiste Saleil Université de Montréal, Marc Feeley Université de Montréal
DOI
15:55
20m
Talk
Twopy: A Just-In-Time Compiler For Python Based On Code Specialization
VMIL
Julien Pagès Université de Montréal, Marc Feeley Université de Montréal
16:15
25m
Research 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
25m
Research 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