SPLASH 2022
Mon 5 - Sat 10 December 2022 Auckland, New Zealand

Pattern matching is a high-level notation for programs to analyse the shape of data, and can be optimised to efficient low-level instructions.
The Stratego language uses \emph{first-class pattern matching}, a powerful form of pattern matching that traditional optimisation techniques do not apply to directly.

In this paper, we investigate how to optimise programs that use first-class pattern matching.
Concretely, we show how to map first-class pattern matching to a form close to traditional pattern matching, on which standard optimisations can be applied.

Through benchmarks, we demonstrate the positive effect of these optimisations on the run-time performance of Stratego programs.
We conclude that the expressive power of first-class pattern matching does not hamper the optimisation potential of a language that features it.

Wed 7 Dec

Displayed time zone: Auckland, Wellington change

10:30 - 12:00
Session 6. Language Implementation, Debugging and OptimizationSLE at Seminar Room G007
Chair(s): Marco Servetto Victoria University of Wellington
10:30
24m
Talk
A Multi-target, Multi-paradigm DSL Compiler for Algorithmic Graph ProcessingVirtualResearch Paper
SLE
Houda Boukham Ecole Mohammadia d'Ingénieurs; Oracle Labs, Guido Wachsmuth Oracle Labs, Martijn Dwars Oracle Labs, Dalila Chiadmi Ecole Mohammadia d'Ingénieurs
DOI
10:54
24m
Talk
Optimising First-Class Pattern MatchingResearch PaperIn Person
SLE
Jeff Smits Delft University of Technology, Toine Hartman Independent, Jesper Cockx Delft University of Technology
DOI
11:18
24m
Talk
Specializing Scope Graph Resolution QueriesResearch PaperIn Person
SLE
Aron Zwaan Delft University of Technology
DOI
11:42
15m
Talk
Reflection as a Tool to Debug ObjectsTool PaperVirtual
SLE
Steven Costiou INRIA Lille, Vincent Aranega Univ. Lille, CNRS, Inria, Centrale Lille, UMR 9189 - CRIStAL, Marcus Denker INRIA Lille
DOI