Write a Blog >>
ECOOP and ISSTA 2021
Sun 11 - Sat 17 July 2021 Online
Tue 13 Jul 2021 14:20 - 14:40 at ICOOOLPS - ICOOOLPS

Programming languages, such as JavaScript, Ruby or Python, rely on a managed runtime to reach state-of-the-art performance (see respectively V8, JRuby, PyPy). Such runtime systems apply aggressive optimisations based on speculative assumptions: one common assumption is that the behaviour of a program remains mostly homogeneous at run time. However, literature on the run-time behaviour of programs shows that programs contain several distinct phases (i.e. intervals of time exhibiting a distinct and relatively homogeneous behaviour) and that these phases may also repeat. For instance, the backend of a scientific computation web server can be viewed as such a program: first it analyses the user request, then computes statistics on received data and lastly outputs a plot.

In this talk, we discuss how programming language implementations overlook phases in program behaviour, and we investigate how they could benefit from recognising and adapting to behaviour changes between phases.

Tue 13 Jul

Displayed time zone: Brussels, Copenhagen, Madrid, Paris change

13:00 - 17:30
ICOOOLPSICOOOLPS at ICOOOLPS
13:00
5m
Other
Welcome
ICOOOLPS

13:05
25m
Talk
The Two Cultures of Language ImplementationInvited Talk
ICOOOLPS
Stephen Kell King's College London
13:30
20m
Paper
Naïve Transient Cast Insertion Isn’t (That) BadPaper
ICOOOLPS
P: Erin Greenwood-Thessman Victoria University of Wellington, Isaac Oscar Gariano Victoria University of Wellington, Richard Roberts Victoria University of Wellington, Stefan Marr University of Kent, Michael Homer Victoria University of Wellington, James Noble Victoria University of Wellington
DOI Pre-print
13:50
20m
Talk
Threaded Code Generation with a Meta-tracing JIT CompilerPosition Paper
ICOOOLPS
P: Yusuke Izawa Tokyo Institute of Technology, Hidehiko Masuhara Tokyo Institute of Technology, Carl Friedrich Bolz-Tereick , Youyou Cong Tokyo Institute of Technology
Pre-print
14:10
10m
Social Event
Break
ICOOOLPS

14:20
20m
Talk
Avoiding Monomorphisation Bottlenecks with Phase-based Splitting
ICOOOLPS
P: Sophie Kaleba University of Kent, Stefan Marr University of Kent, Richard Jones University of Kent
Pre-print
14:40
20m
Talk
Native Implementation of Mutable Value SemanticsPosition Paper
ICOOOLPS
P: Dimitri Racordon University of Geneva, Switzerland, Denys Shabalin EPFL, Switzerland, Dave Abrahams Google, Dan Zheng Purdue University, Google Brain, Brennan Saeta Google
Pre-print
15:00
20m
Talk
An Eclipse OMR-based Garbage Collector for Python
ICOOOLPS
P: Joannah Nanjekye University of New Brunswick, David Bremner University of New Brunswick, Aleksandar Micic IBM, Canada
15:20
20m
Social Event
Break
ICOOOLPS

15:40
20m
Talk
Userfault Objects: Transparent Programmable MemoryPosition Paper
ICOOOLPS
P: Konrad Siek Czech Technical University in Prague, Colette Kerr ČVUT
Pre-print
16:00
20m
Talk
The Strange and Wondrous Life of Functions in Ř
ICOOOLPS
Jan Ječmen , Olivier Flückiger Northeastern University, Sebastián Krynski Czech Technical University in Prague, P: Jan Vitek Northeastern University / Czech Technical University
File Attached
16:20
20m
Talk
Non-Intrusive Migration from Lazy to Eager Evaluation
ICOOOLPS
P: Aviral Goel Northeastern University, Jan Vitek Northeastern University / Czech Technical University
16:40
10m
Social Event
Break
ICOOOLPS

16:50
20m
Talk
A Framework and DSL for Distributed, Energy-constrained, and Time-sensitive Applications
ICOOOLPS
P: Kyle Liang Carnegie Mellon University, Reese Grimsley CMU, Eve Hu CMU, Edward Andert Arizona State University, Mohammad Khayatian Arizona State University, Aviral Shrivastava Arizona State University, Carlee Joe-Wong CMU, Jonathan Aldrich Carnegie Mellon University, Bob Iannucci CMU
17:10
20m
Talk
Fuel: A Compiler Framework for Safe Memory ManagementPosition Paper
ICOOOLPS
Dimitri Racordon University of Geneva, Switzerland, P: Aurélien Coet University of Geneva, Switzerland, Didier Buchs University of Geneva, Switzerland
Pre-print