Tue 27 Oct 2015 13:30 - 13:52 at Grand Station 3 - Session 3, Compilation

Task migration allows a running program to continue its execution in a different destination environment. Increasingly, execution environments are defined by combinations of cultural and technological constraints, affecting the choice of host language, libraries and tools. A compiler supporting multiple target environments and task migration must be able to serialize continuations and then deserialize and continue their execution, ideally, even if the language of the destination environment is different. In this paper, we propose a compilation approach based on a virtual machine that strikes a balance between implementation portability and efficiency. We explain its implementation within a Scheme compiler targetting JavaScript, PHP, Python, Ruby and Java - some of the most popular host languages for web applications. As our experiments show, this approach compares well with other Scheme compilers targetting high-level languages in terms of execution speed, being sometimes up to 3 orders of magnitude faster.

Tue 27 Oct
Times are displayed in time zone: (GMT-04:00) Eastern Time (US & Canada) change

13:30 - 15:00: DLS - Session 3, Compilation at Grand Station 3
dls201513:30 - 13:52
dls201513:52 - 14:15
Matthias GrimmerJohannes Kepler University Linz, Chris SeatonOracle Labs / University of Manchester, Roland SchatzJohannes Kepler University Linz, Thomas WuerthingerOracle Labs, Hanspeter MössenböckJohannes Kepler University Linz
dls201514:15 - 14:37
David LeopoldsederJohannes Kepler University Linz, Lukas StadlerOracle Labs, Christian WimmerOracle Labs, Hanspeter MössenböckJohannes Kepler University Linz
dls201514:37 - 15:00
Tim FelgentreffHPI, Germany, Tobias PapeHasso-Plattner-Institute, Potsdam, Robert HirschfeldHPI, Carl Friedrich Bolz-TereickKing's College London , Anton GulenkoTU Berlin