Write a Blog >>
SPLASH 2019
Sun 20 - Fri 25 October 2019 Athens, Greece
Wed 23 Oct 2019 18:56 - 19:07 at Foyer - Competition - Round 1
Thu 24 Oct 2019 17:15 - 17:30 at Room 1 - Competition - Round 2

Partial evaluation, based on the first Futamura projection, allows compiling language interpreters with given user programs to efficient target programs. GraalVM is an example system that implements this mechanism. It combines partial evaluation with profiling information and dynamic compilation, to transform interpreters into high-performance machine code at run time. However, partial evaluation is compile-time intensive, as it requires the abstract interpretation of interpreter implementations. Thus, optimizing partial evaluation is still subject to research to this day. We present an approach to speed up partial evaluation, by generating source code ahead of time, which performs partial evaluation specific to interpreter implementations. Generated code, when executed for a given user program at run time, directly emits partially evaluated interpreter instructions for language constructs it knows and sees in the program. This yields the target program faster than performing the first Futamura projection. The generated source code behaves similarly to a specialized partial evaluator deduced by performing the second Futamura projection, although no self-applying partial evaluator is involved during code generation.

Researcher and PhD student at the Johannes Kepler University in Linz, Austria.

Wed 23 Oct

splash-2019-SRC
18:00 - 19:30: SRC - Competition - Round 1 at Foyer
splash-2019-SRC18:00 - 18:11
Talk
Beatriz SouzaFederal University of Campina Grande
splash-2019-SRC18:11 - 18:22
Talk
Kalliopi Evangelia StavrouliaCyprus University of Technology, Andreas LanitisCyprus University of Technology
splash-2019-SRC18:22 - 18:33
Talk
Dominik AumayrJohannes Kepler University Linz, Austria
splash-2019-SRC18:33 - 18:45
Talk
Aaron LippeveldtsVrije Universiteit Brussel, Dominique DevrieseVrije Universiteit Brussel
splash-2019-SRC18:45 - 18:56
Talk
Muna AltherwiSouthampton University
splash-2019-SRC18:56 - 19:07
Talk
Florian LatifiJohannes Kepler University Linz
DOI Pre-print
splash-2019-SRC19:07 - 19:18
Talk
Samuel EstepLiberty University, Jenna WiseCarnegie Mellon University, Jonathan AldrichCarnegie Mellon University, Éric TanterUniversity of Chile & Inria Paris, Johannes BaderFacebook
splash-2019-SRC19:18 - 19:30
Talk
Maarten P. SijmDelft University of Technology

Thu 24 Oct

splash-2019-SRC
16:00 - 17:30: SRC - Competition - Round 2 at Room 1
splash-2019-SRC16:00 - 16:15
Talk
Kalliopi Evangelia StavrouliaCyprus University of Technology, Andreas LanitisCyprus University of Technology
splash-2019-SRC16:15 - 16:30
Talk
Aaron LippeveldtsVrije Universiteit Brussel, Dominique DevrieseVrije Universiteit Brussel
splash-2019-SRC16:30 - 16:45
Talk
Samuel EstepLiberty University, Jenna WiseCarnegie Mellon University, Jonathan AldrichCarnegie Mellon University, Éric TanterUniversity of Chile & Inria Paris, Johannes BaderFacebook
splash-2019-SRC16:45 - 17:00
Talk
Maarten P. SijmDelft University of Technology
splash-2019-SRC17:00 - 17:15
Talk
Dominik AumayrJohannes Kepler University Linz, Austria
splash-2019-SRC17:15 - 17:30
Talk
Florian LatifiJohannes Kepler University Linz
DOI Pre-print