SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Mon 23 Oct 2023 09:30 - 10:00 at Room II - Language implementation Chair(s): Thomas Degueule

Python is a popular programming language whose performance is known to be uncompetitive in comparison to static languages such as C. Although significant efforts have already accelerated implementations of the language, more efficient ones are still required. The development of such optimized implementations is nevertheless hampered by its complex semantics and the lack of an official formal semantics. We address this issue by presenting an approach to define an executable semantics targeting the development of optimizing compilers. This executable semantics is written in a format that highlights type checks, primitive values boxing and unboxing, and function calls which are all known sources of overhead. We also present semPy, a partial evaluator of our executable semantics that can be used to remove redundant operations when evaluating arithmetic operators. Finally, we present Zipi, a Python optimizing compiler prototype developed with the aid of semPy. On some tasks, Zipi displays performance competitive with that of state of art Python implementations.

Mon 23 Oct

Displayed time zone: Lisbon change

09:00 - 10:30
Language implementationSLE at Room II
Chair(s): Thomas Degueule CNRS, LaBRI

This session will start at 08:50 with a welcome and general announcements from the Conference General Chair.

09:00
30m
Talk
Exceptions all Over the Shop: Modular, Customizable, Language-independent Exception Handling LayerResearch Paper
SLE
Walter Cazzola Università degli Studi di Milano, Luca Favalli Università degli Studi di Milano
DOI
09:30
30m
Talk
An Executable Semantics for Faster Development of Optimizing Python CompilersResearch Paper
SLE
Olivier Melancon Université de Montréal, Marc Feeley Université de Montréal, Manuel Serrano Inria; University of Côte d'Azur
DOI
10:00
30m
Talk
Adaptive Structural Operational SemanticsResearch Paper
SLE
Gwendal Jouneaux University of Rennes; Inria; IRISA, Damian Frölich University of Amsterdam, Olivier Barais University of Rennes; Inria; CNRS; IRISA, Benoit Combemale University of Rennes, Inria, CNRS, IRISA, Gurvan LE GUERNIC DGA MI & Université de Rennes 1, Gunter Mussbacher McGill University, L. Thomas van Binsbergen University of Amsterdam
DOI Pre-print