Tiark Rompf

Purdue University, Department of Computer Science

Home | Research | Blog | Publications | Talks | Group | Teaching | Service

Publications

See also Google Scholar and DBLP. Many papers are available as PDF here.

Current Preprints

Conferences/Workshops (Full Papers)

2024
  • Rhyme: A Data-Centric Expressive Query Language for Nested Data Structures. Supun Abeysinghe, Tiark Rompf. PADL '24. Databases: Query Compilation, Databases: Multi-Paradigm, Paradigms: Logic Programming
  • Flan: An Expressive and Efficient Datalog Compiler for Program Analysis. Supun Abeysinghe, Anxhelo Xhebraj, Tiark Rompf. POPL '24. Databases: Query Compilation, Databases: Multi-Paradigm, Program Analysis: Datalog, Paradigms: Logic Programming
  • Polymorphic Reachability Types: Tracking Aliasing and Separation in Higher-Order Generic Programs. Guannan Wei, Oliver Bracevac, Songlin Jia, Yuyan Bao, Tiark Rompf. POPL '24. Type Systems: Reachability Types
2023
  • Efficient Composition of Data Management and Machine Learning Systems via Common Intermediate Layers. Supun Abeysinghe, Fei Wang, Gregory Essertel, Tiark Rompf. MAPS '23. Compilers: ML Systems, Databases: Query Compilation, Databases: Multi-Paradigm
  • Graph IRs for Impure Higher-Order Languages: Making Aggressive Optimizations Affordable with Precise Effect Dependencies. Oliver Bračevac, Guannan Wei, Songlin Jia, Supun Abeysinghe, Luke Jiang, Yuyan Bao, Tiark Rompf. OOPSLA '23. Type Systems: Reachability Types, Compilers: Graph IRs
  • Compiling Parallel Symbolic Execution with Continuations. Guannan Wei, Songlin Jia, Ruiqi Gao, Haotian Deng, Shangyin Tan, Oliver Bračevac, Tiark Rompf. ICSE '23. Program Analysis: Symbolic Execution, Compilers: Continuations
2022
  • What if we Don't Pop the Stack? The Return of Second-Class Values. Anxhelo Xhebraj, Oliver Bracevac, Guannan Wei, Tiark Rompf. ECOOP '22. Type Systems: 2nd-Class Values
  • Efficient Incrementialization of Correlated Nested Aggregate Queries using Relative Partial Aggregate Indexes (RPAI). Supun Abeysinghe, Qiyang He, Tiark Rompf. SIGMOD '22. Databases: Query Compilation, Paradigms: Incremental Computation, Other: Datastructures
  • Towards Partially Evaluating Symbolic Interpreters for All. Shangyin Tan, Guannan Wei, Tiark Rompf. PEPM '22. Program Analysis: Symbolic Execution
2021
  • Prolog-Style Meta-Programming miniKanren. Nada Amin, William E Byrd, Tiark Rompf. miniKanren '21. Paradigms: Logic Programming
  • On-Stack Replacement for Program Generators and Source-to-Source Compilers. Gregory Essertel, Ruby Tahboub, Tiark Rompf. GPCE '21. Compilers: On-Stack Replacement, Databases: Query Compilation, Metaprogramming: Other
  • HACCLE: Metaprogramming for Secure Multi-Party Computation. Yuyan Bao, Kirshanthan Sundararajah, Raghav Malik, Qianchuan Ye, Christopher Wagner, Nouraldin Jaber, Fei Wang, Mohammad Hassan Ameri, Donghang Lu, Alexander Seto, Benjamin Delaware, Roopsha Samanta, Aniket Kate, Christina Garman, Jeremiah Blocki, Pierre-David Letourneau, Benoit Meister, Jonathan Springer, Tiark Rompf, Milind Kulkarni. GPCE '21. Other: Multi-Party Computation
  • Reachability Types: Tracking Aliasing and Separation in Higher-Order Functional Programs. Yuyan Bao, Guannan Wei, Oliver Bračevac, Yuxuan Jiang, Qiyang He, Tiark Rompf. OOPSLA '21. Type Systems: Reachability Types
  • LLSC: a parallel symbolic execution compiler for LLVM IR. Guannan Wei, Shangyin Tan, Oliver Bračevac, Tiark Rompf. FSE '21. Program Analysis: Symbolic Execution
2020
  • Compiling Symbolic Execution with Staging and Algebraic Effects. Guannan Wei, Oliver Bračevac, Shangyin Tan, Tiark Rrompf. OOPSLA '20. Program Analysis: Symbolic Execution
  • Architecting a Query Compiler for Spatial Workloads. Ruby Tahboub, Tiark Rompf. SIGMOD '20. Databases: Query Compilation
2019
  • Parallel Training via Computation Graph Transformation. Fei Wang, Guoyang Chen, Weifeng Zhang, Tiark Rompf. IEEE Big Data '19. Compilers: ML Systems
  • Lightweight Functional Logic Meta-Programming. Nada Amin, William Byrd, Tiark Rompf. APLAS '19. Paradigms: Logic Programming
  • A Stage-Polymorphic IR for Compiling MATLAB-Style Dynamic Tensor Expressions. Alen Stojanov, Tiark Rompf, Markus Püschel. GPCE '19. Metaprogramming: Stage Polymorphism, Compilers: Arrays and Tensors, Compilers: ML Systems
  • Staged Abstract Interpreters. Guannan Wei, Yuxuan Chen, Tiark Rompf. OOPSLA '19. Program Analysis: Abstract Interpretation
  • Precise Reasoning with Structured Time, Structured Heaps, and Collective Operations. Gregory Essertel, Guannan Wei, Tiark Rompf. OOPSLA '19. Program Analysis: Optimizing for Clarity
  • Demystifying Differentiable Programming: Shift/Reset the Penultimate Backpropagator. Fei Wang, Daniel Zheng, James Decker, Xilun Wu, Gregory Essertel, Tiark Rompf. ICFP '19. Compilers: ML Systems, Paradigms: Differentiable Programming
  • Compiling with Continuations, or without? Whatever. Youyou Cong, Leo Osvald, Grégory Essertel, Tiark Rompf. ICFP '19. Compilers: Continuations
  • Graph Neural Reasoning for 2-Quantified Boolean Formula Solver. Zhanfu Yang, Fei Wang, Ziliang Chen, Guannan Wei, Tiark Rompf. ICML Learning and Reasoning with Graph-Structured Data Workshop '19. Other: Neurosymbolic Reasoning
  • Flare & Lantern: Efficiently Swapping Horses Midstream. Gregory Essertel, Ruby Tahboub, Fei Wang, James Decker, Tiark Rompf. VLDB Demo Track '19. Compilers: ML Systems, Systems: Flare, Databases: Query Compilation
  • Towards compiling graph queries in relational engines. Ruby Y Tahboub, Xilun Wu, Gregory Essertel, Tiark Rompf. DBPL '19. Databases: Query Compilation
  • AutoGraph: Imperative-Style Coding with Graph-Based Performance. Dan Moldovan, James M Decker, Fei Wang, Andrew A Johnson, Brian K Lee, Zachary Nado, D Sculley, Tiark Rompf, Alexander B Wiltschko. SysML '19. Compilers: ML Systems
2018
  • Backpropagation with Callbacks: Towards Efficient and Expressive Differentiable Programming. Fei Wang, James Decker, Xilun Wu, Grégory Essertel, Tiark Rompf. NeurIPS '18. Compilers: ML Systems, Paradigms: Differentiable Programming
  • Flare: Optimizing Apache Spark for Scale-Up Architectures and Medium-Size Data. Grégory Essertel, Ruby Tahboub, James Decker, Kevin J Brown, Kunle Olukotun, Tiark Rompf. OSDI '18. Compilers: ML Systems, Databases: Query Compilation
  • Refunctionalization of Abstract Abstract Machines (Functional Pearl). Guannan Wei, James Decker, Tiark Rompf. ICFP '18. Program Analysis: Abstract Interpretation
  • How to Architect a Query Compiler, Revisited. Ruby Tahboub, Grégory Essertel, Tiark Rompf. SIGMOD '18. Databases: Query Compilation
  • SIMD Intrinsics on Managed Language Runtimes. Alen Stojanov, Ivaylo Toskov, Tiark Rompf, Markus Püschel. CGO '18. Compilers: SIMD, Compilers: JIT
  • Collapsing Towers of Interpreters. Nada Amin, Tiark Rompf. POPL '18. Metaprogramming: Collapsing Towers
2017
  • Staging for Generic Programming in Space and Time. Georg Ofenbeck, Tiark Rompf, Markus Püschel. GPCE '17. Systems: LMS
  • Rust-Like Borrowing with 2nd-Class Values (Short Paper). Leo Osvald, Tiark Rompf. SCALA '17. Type Systems: 2nd-Class Values
  • Flexible Data Views: Design and Implementation. Leo Osvald, Tiark Rompf. ARRAY '17. Compilers: Arrays and Tensors
  • Towards Strong Normalization for Dependent Object Types (DOT). Fei Wang, Tiark Rompf. ECOOP '17. Type Systems: DOT
  • Composing middlebox and traffic engineering policies in SDNs. Yiyang Chang, Gustavo Petri, Sanjay Rao, Tiark Rompf. SWFAN '17. Other: SDN
  • Type Soundness Proofs with Definitional Interpreters. Nada Amin, Tiark Rompf. POPL '17. Type Systems: Other
  • LMS-Verify: Abstraction Without Regret for Verified Systems Programming. Nada Amin, Tiark Rompf. POPL '17. Program Analysis: Verification
  • Functional Parallels of Sequential Imperatives (Short Paper). Tiark Rompf, Kevin J Brown. PEPM '17. Compilers: Other
2016
  • Reflections on LMS: Exploring Front-End Alternatives. Tiark Rompf. SCALA '16. Systems: LMS
  • RandIR: Differential Testing for Embedded Compilers. Georg Ofenbeck, Tiark Rompf, Markus Püschel. SCALA '16. Program Analysis: Differential Testing
  • On Supporting Compilation in Main-Memory Spatial Query Engines. Ruby Tahboub, Grégory Essertel, Tiark Rompf. SIGSPATIAL '16. Databases: Query Compilation, Databases: Multi-Paradigm
  • Type Soundness for Dependent Object Types (DOT). Tiark Rompf, Nada Amin. OOPSLA '16. Type Systems: DOT
  • Gentrification Gone too Far? Affordable 2nd-Class Values for Fun and (Co-)Effect. Leo Osvald, Grégory Essertel, Xilun Wu, Lilliam I González-Alayón, Tiark Rompf. OOPSLA '16. Type Systems: 2nd-Class Values
  • The Essence of Multi-Stage Evaluation in LMS. Tiark Rompf. WadlerFest '16. Systems: LMS, Metaprogramming: Other
  • The Essence of Dependent Object Types. Nada Amin, Samuel Gruetter, Martin Odersky, Tiark Rompf, Sandro Stucki. WadlerFest '16. Type Systems: DOT
  • Have Abstraction and Eat Performance Too: Optimized Heterogeneous Computing with Parallel Patterns. Kevin Brown, Hyoukjoong Lee, Tiark Rompf, Arvind Sujeeth, Christopher De Sa, Christopher Aberger, Kunle Olukotun. CGO '16. Systems: Delite
2015
  • Functional Pearl: A SQL to C Compiler in 500 Lines of Code. Tiark Rompf, Nada Amin. ICFP '15. Databases: Query Compilation
  • RRB Vector: A Practical General Purpose Immutable Sequence. Nicolas Stucki, Tiark Rompf, Vlad Ureche, Phil Bagwell. ICFP '15. Other: Datastructures
  • Go Meta! A Case for Generative Programming and DSLs in Performance Critical Systems. Tiark Rompf, Kevin J Brown, HyoukJoong Lee, Arvind K Sujeeth, Manohar Jonnalagedda, Nada Amin, Georg Ofenbeck, Alen Stojanov, Yannis Klonatos, Mohammad Dashti, Christoph Koch, Markus Püschel, Kunle Olukotun. SNAPL '15. Systems: LMS
2014
  • Locality-Aware Mapping of Nested Parallel Patterns on GPUs. HyoukJoong Lee, Kevin J Brown, Arvind K Sujeeth, Tiark Rompf, Kunle Olukotun. MICRO '14. Systems: Delite, Compilers: GPU
  • Foundations of Path-Dependent Types. Nada Amin, Tiark Rompf, Martin Odersky. OOPSLA '14. Type Systems: DOT
  • Staged Parser Combinators for Efficient Data Processing. Manohar Jonnalagedda, Thierry Coppey, Sandro Stucki, Tiark Rompf, Martin Odersky. OOPSLA '14. Systems: LMS, Other: Data Processing
  • Hardware System Synthesis from Domain-Specific Languages. Nithin George, Hyoukjoong Lee, David Novo, Tiark Rompf, Kevin Brown, Arvind Sujeeth, Martin Odersky, Kunle Olukotun and Paolo Ienne. FPL '14. Other: Hardware
  • Computing with an SMT Solver. Nada Amin, K Rustan M Leino, Tiark Rompf. TAP '14. Paradigms: SMT
  • Abstracting Vector Architectures in Library Generators: Case Study Convolution Filters. Alen Stojanov, Georg Ofenbeck, Tiark Rompf, Markus Püschel. ARRAY '14. Systems: LMS, Metaprogramming: Stage Polymorphism, Compilers: SIMD
  • Building Efficient Query Engines in a High-Level Language. Yannis Klonatos, Christoph Koch, Tiark Rompf, Hassan Chafi. VLDB '14. Best Paper Award. Databases: Query Compilation
  • Surgical Precision JIT Compilers. Tiark Rompf, Arvind K Sujeeth, Kevin J Brown, HyoukJoong Lee, Hassan Chafi, Kunle Olukotun. PLDI '14. Metaprogramming: Other, Compilers: JIT
2013
  • Making Domain-Specific Hardware Synthesis Tools Cost-Efficient. Nithin George, David Novo, Tiark Rompf, Martin Odersky, Paolo Ienne. ICFPT '13. Other: Hardware
  • Spiral in Scala: Towards the Systematic Construction of Generators for Performance Libraries. Georg Ofenbeck, Tiark Rompf, Alen Stojanov, Martin Odersky, Markus Püschel. GPCE '13. Systems: LMS, Systems: Spiral
  • Forge: Generating a High Performance DSL Implementation from a Declarative Specification. Arvind K Sujeeth, Austin Gibbons, Kevin J Brown, HyoukJoong Lee, Tiark Rompf, Martin Odersky, Kunle Olukotun. GPCE '13. Systems: Delite
  • What are the Odds? Probabilistic Programming in Scala. Sandro Stucki, Nada Amin, Manohar Jonnalagedda, Tiark Rompf. SCALA '13. Paradigms: Probabilistic Programming
  • Composition and Reuse with Compiled Domain-Specific Languages. Arvind K Sujeeth, Tiark Rompf, Kevin J Brown, HyoukJoong Lee, Hassan Chafi, Victoria Popic, Michael Wu, Aleksander Prokopec, Vojin Jovanovic, Martin Odersky, Kunle Olukotun. ECOOP '13. Systems: Delite
  • Optimizing Data Structures in High-Level Programs: New Directions for Extensible Compilers based on Staging. Tiark Rompf, Arvind K Sujeeth, Nada Amin, Kevin J Brown, Vojin Jovanovic, HyoukJoong Lee, Martin Odersky, Kunle Olukotun. POPL '13. Systems: LMS, Compilers: Graph IRs
2012
  • Jet: An Embedded DSL for High Performance Big Data Processing. Stefan Ackermann, Vojin Jovanovic, Tiark Rompf, Martin Odersky. BigData '12. Other: Data Processing
  • JavaScript as an Embedded DSL. Grzegorz Kossakowski, Nada Amin, Tiark Rompf, Martin Odersky. ECOOP '12. Systems: LMS, Other: JS
  • Scala-Virtualized. Adriaan Moors, Tiark Rompf, Philipp Haller, Martin Odersky. PEPM '12. Selected for HOSC special issue. Systems: LMS
  • StagedSAC: A Case Study in Performance-Oriented DSL Development. Vlad Ureche, Tiark Rompf, Arvind Sujeeth, Hassan Chafi, Martin Odersky. PEPM '12. Compilers: Arrays and Tensors
2011
  • A Heterogeneous Parallel Framework for Domain-Specific Languages. Kevin J Brown, Arvind K Sujeeth, HyoukJoong Lee, Tiark Rompf, Hassan Chafi, Martin Odersky, Kunle Olukotun. PACT '11. Systems: Delite
  • Building-Blocks for Performance Oriented DSLs. Tiark Rompf, Arvind K Sujeeth, HyoukJoong Lee, Kevin J Brown, Hassan Chafi, Martin Odersky, Kunle Olukotun. DSL '11. Systems: LMS, Systems: Delite
  • A Generic Parallel Collection Framework. Aleksandar Prokopec, Phil Bagwell, Tiark Rompf, Martin Odersky. Euro-Par '11. Other: Datastructures
  • OptiML: An Implicitly Parallel Domain-Specific Language for Machine Learning. Arvind K Sujeeth, HyoukJoong Lee, Kevin J Brown, Tiark Rompf, Hassan Chafi, Michael Wu, Anand R Atreya, Martin Odersky, Kunle Olukotun. ICML '11. Systems: LMS, Systems: Delite, Compilers: ML Systems
2010
  • Language Virtualization for Heterogeneous Parallel Computing. Hassan Chafi, Zach DeVito, Adriaan Moors, Tiark Rompf, Arvind K Sujeeth, Pat Hanrahan, Martin Odersky, Kunle Olukotun. Onward! '10. Systems: Delite
  • Lightweight Modular Staging: A Pragmatic Approach to Runtime Code Generation and Compiled DSLs. Tiark Rompf, Martin Odersky. GPCE '10. Selected as SIGPLAN CACM research highlight. Systems: LMS, Compilers: Graph IRs
2009
  • Implementing First-Class Polymorphic Delimited Continuations by a Type-Directed Selective CPS-Transform. Tiark Rompf, Ingo Maier, Martin Odersky. ICFP '09. Type Systems: Other, Compilers: Continuations
  • A Cryptographically t-Private Auction System. Markus Hinkelmann, Andreas Jakoby, Nina Moebius, Tiark Rompf, Peer Stechert. NSS '09. Other: Multi-Party Computation

Workshops (Extended Abstracts)

Technical Reports

Journals

Theses