Write a Blog >>
Scala 2017
Sun 22 - Mon 23 October 2017 Vancouver, Canada
co-located with SPLASH 2017
Sun 22 Oct 2017 13:30 - 14:00 at Regency C - Compilation Chair(s): Paolo G. Giarrusso

Supercompilation is a program transformation technique that attempts to evaluate programs as much as possible at compile time. Supercompilation has been used for theorem proving, function inversion, and most notably optimization, especially of functional programs. However, the technique has numerous practical problems that prevent it from being applied in mainstream compilers. In this paper, we describe a framework that can be used for experimenting with supercompilation techniques. Our framework allows supercompilers to be constructed directly from an interpreter. The user specifies the interpreter using rewrite rules and the framework handles termination checking, generalization, and residualization. We demonstrate the approach by implementing a supercompiler for JavaScript.

Sun 22 Oct

Displayed time zone: Tijuana, Baja California change

13:30 - 15:00
CompilationScala 2017 at Regency C
Chair(s): Paolo G. Giarrusso University of Tübingen, Germany
13:30
30m
Talk
A Scala Framework for Supercompilation
Scala 2017
DOI
14:00
30m
Talk
Making Collection Operations Optimal with Aggressive JIT Compilation
Scala 2017
Aleksandar Prokopec Oracle Labs, David Leopoldseder Johannes Kepler University Linz, Gilles Duboscq Oracle Labs, Thomas Wuerthinger Oracle Labs
DOI
14:30
30m
Talk
ScalaSMT: Satisfiability Modulo Theory in Scala (Tool Paper)
Scala 2017
Franck Cassez Macquarie University, Australia, Anthony Sloane Macquarie University
DOI