Tiark  Rompf

I'm an assistant professor at Purdue University, in the broad area of programming languages and compilers.

I'm interested in all aspects of programming. My primary goal is to make high-level languages and programming techniques usable for performance critical systems.

To that end, my research focuses on generative programming, which can turn highly generic programs into specialized and efficient implementations.

I like bringing theoretical insights into practical use, and applying PL technology to other CS fields such as databases, machine learning, or hardware architecture.


Some recent...

Research Bio

Three recent papers:

Most of my work revolves around Lightweight Modular Staging (LMS) and Delite, technologies for integrating runtime code generation into high-level programs and building embedded compilers for domain specific languages (DSLs). Delite is a joint project with Kunle Olukotun's group at the Stanford Pervasive Parallelism Lab. At Oracle Labs (2012-2014) I started Project Lancet, which aims to turn JIT compilers into precision tools in future JVM generations. I'm also applying LMS to speed up data processing and query engines.

As a member of Martin Odersky's Scala team from 2008 to 2014, my contributions to Scala include delimited continuations, efficient immutable data structures (Set, Map, Vector) and speedups in the Scala compiler (type checking, implicit search, bytecode generation; up to 3x for certain projects). I also started the Scala-Virtualized research branch. More recently I helped formalize parts of Scala's type system in the DOT calculus, leading to the first mechanized soundness proof of DOT.

I received an MS in computer science from University of Lübeck (2008) and a PhD from EPFL (2012). Before my PhD I co-founded two startups and lead software projects outside of academia, ranging from CAD software for kitesurfing equipment to hospital systems for electronic anesthesia records, image processing for OCT workstations, and therapeutic games.


Past projects:


See also Google Scholar and DBLP.


Conferences/Workshops (Full Papers)

Workshops (Extended Abstracts)

Technical Reports



Invited Talks

Conference Tutorials

Selected Other Talks


Program committees and conference organization:

Additional reviewing: Science of Computer Programming, IEEE Software, Higher Order and Symbolic Computation, ESOP'15, ASPLOS'13, ESOP'11, PEPM'10