Scala 2016
Sun 30 - Mon 31 October 2016 Amsterdam, Netherlands
co-located with SPLASH 2016
Sun 30 Oct 2016 13:55 - 14:20 at Matterhorn 2 - Embedding

Metaprogramming techniques to generate code at runtime in a general-purpose meta-language have seen a surge of interest in recent years, driven by the widening performance gap between high-level languages and emerging hardware platforms. In the context of Scala, the LMS (Lightweight Modular Staging) framework has contributed to "abstraction without regret''–high-level programming without performance penalty–in a number of challenging domains, through runtime code generation and embedded compiler pipelines based on stacks of DSLs.

Based on this experience, this paper crystallizes some of the design decisions of LMS and discusses potential alternatives, which maintain the underlying spirit but differ in implementation choices: specifically, strategies for realizing more flexible front-end embeddings using type classes instead of higher-kinded types, and strategies for type-safe metaprogramming with untyped intermediate representations.

Tiark Rompf is an assistant professor at Purdue University. His work focuses on runtime code generation, advanced compiler technology, and associated language support. From 2008 to 2014 he was a member of Martin Odersky’s Scala team at EPFL where he developed the LMS compiler framework and made various contributions to the Scala language and toolchain (delimited continuations, efficient immutable data structures, compiler speedups, type system work).

Sun 30 Oct
Times are displayed in time zone: (GMT+02:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

13:30 - 15:10: Scala - Embedding at Matterhorn 2
scala-201613:30 - 13:55
Georg OfenbeckETH Zurich, Switzerland, Tiark RompfPurdue University, USA, Markus PüschelETH Zurich
DOI File Attached
scala-201613:55 - 14:20
Tiark RompfPurdue University, USA
scala-201614:20 - 14:45
Markus Hauckcodecentric AG, Savvas SavvidesPurdue University, Patrick EugsterPurdue University, Mira MeziniTU Darmstadt, Guido SalvaneschiTU Darmstadt, Germany
DOI Pre-print Media Attached
scala-201614:45 - 15:10
Zeljko Bajic, Milan JovicDepartment of Mathematics and Informatics, Faculty of Sciences, University of Novi Sad