Wed 17 Jul 2019 11:50 - 12:10 at Mancy - Language Design and Implementation Chair(s): John Wickerson

DynSem is a domain-specific language for concise specification of the dynamic semantics of programming languages, aimed at rapid experimentation and evolution of language designs. To maintain a short definition-to-execution cycle, DynSem specifications are meta-interpreted. Meta-interpretation introduces runtime overhead that is difficult to remove by using interpreter optimization frameworks such as the Truffle/Graal Java tools; previous work has shown order-of-magnitude improvements from applying Truffle/Graal to a meta-interpreter, but this is still far slower than what can be achieved with a language-specific interpreter. In this paper, we show how specifying the meta-interpreter using scope graphs, which encapsulate static name binding and resolution information, produces much better optimization results from Truffle/Graal. Furthermore, we identify that JIT compilation is hindered by large numbers of calls between small polymorphic rules and we introduce rule cloning to derive larger monomorphic rules at run time as a countermeasure. Our contributions improve the performance of DynSem-derived interpreters to within a factor of 1.5-4.5 (in most cases) of a handwritten language-specific interpreter, and to within an order of magnitude of native code.

Wed 17 Jul

Displayed time zone: Belfast change

10:30 - 12:10
Language Design and ImplementationResearch Papers at Mancy
Chair(s): John Wickerson Imperial College London
10:30
20m
Research paper
Lifestate: Event-Driven Protocols and Callback Control Flow
Research Papers
Shawn Meier University of Colorado, Boulder, Sergio Mover Ecole Polytechnique, Bor-Yuh Evan Chang University of Colorado Boulder
DOI Media Attached
10:50
20m
Research paper
Godot: All the Benefits of Implicit and Explicit Futures
Research Papers
Kiko Fernandez-Reyes Uppsala University, Einar Broch Johnsen University of Oslo, Dave Clarke Uppsala Univ. Sweden and KU Leuvern, Ludovic Henrio CNRS, Tobias Wrigstad Uppsala University
DOI Media Attached
11:10
20m
Research paper
Towards Language-Parametric Semantic Editor Services based on Declarative Type System SpecificationsBrave New Idea
Research Papers
Daniel A. A. Pelsmaeker Delft University of Technology, Netherlands, Hendrik van Antwerpen TU Delft, Eelco Visser Delft University of Technology
DOI Media Attached
11:30
20m
Research paper
Multitier Modules
Research Papers
Pascal Weisenburger Technische Universität Darmstadt, Guido Salvaneschi TU Darmstadt
DOI Media Attached
11:50
20m
Research paper
Scopes and Frames Improve Meta-Interpreter Specialization
Research Papers
Vlad Vergu TU Delft, Eelco Visser Delft University of Technology, Andrew Tolmach Portland State University
DOI Media Attached