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
Times are displayed in time zone: Greenwich Mean Time : Belfast change

10:30 - 12:10: Language Design and ImplementationResearch Papers at Mancy
Chair(s): John WickersonImperial College London
10:30 - 10:50
Research paper
Lifestate: Event-Driven Protocols and Callback Control Flow
Research Papers
Shawn MeierUniversity of Colorado, Boulder, Sergio MoverEcole Polytechnique, Bor-Yuh Evan ChangUniversity of Colorado Boulder
DOI Media Attached
10:50 - 11:10
Research paper
Godot: All the Benefits of Implicit and Explicit Futures
Research Papers
Kiko Fernandez-ReyesUppsala University, Einar Broch JohnsenUniversity of Oslo, Dave ClarkeUppsala Univ. Sweden and KU Leuvern, Ludovic HenrioCNRS, Tobias WrigstadUppsala University
DOI Media Attached
11:10 - 11:30
Research paper
Towards Language-Parametric Semantic Editor Services based on Declarative Type System SpecificationsBrave New Idea
Research Papers
Daniel A. A. PelsmaekerDelft University of Technology, Netherlands, Hendrik van AntwerpenTU Delft, Eelco VisserDelft University of Technology
DOI Media Attached
11:30 - 11:50
Research paper
Multitier Modules
Research Papers
Pascal WeisenburgerTechnische Universität Darmstadt, Guido SalvaneschiTU Darmstadt
DOI Media Attached
11:50 - 12:10
Research paper
Scopes and Frames Improve Meta-Interpreter Specialization
Research Papers
Vlad VerguTU Delft, Eelco VisserDelft University of Technology, Andrew TolmachPortland State University
DOI Media Attached