Picture of Jeremy Siek

Jeremy G. Siek
Assistant Professor
Dept. of Electrical, Computer, and Energy Engineering
University of Colorado at Boulder

Office: ECOT 342
Lab: ECEE 1B61A
Vita, Google Scholar
PGP Public Key
Blog

Katie & Jeremy
         Home         Research         Publications         
 

Jeremy's research interests include generic programming, programming language design, type systems, logic, compilation, and high-performance computing. Jeremy created the gradual typing approach to mixing static and dynamic typing and he was one of the architects of the concepts feature that dramatically missed making into the next C++ standard. Jeremy authored the Boost Graph Library and several other libraries in Boost.

New papers
  • Reliable Generation of High-Performance Matrix Algebra with Geoffrey Belter, Elizabeth Jessup, Thomas Nelson, and Boyana Norris. [arxiv]
  • Well-typed Islands Parse Faster with Erik Silkensen. [arxiv]
  • Effects for Funargs with Michael M. Vitousek and Jonathan D. Turner.
  • The F Machine, an abstract machine for System F. Description and mechanized type safety proof (in Isabelle). Dec. 2011. (updated Jan 2)
  • The C++0x "Concepts" Effort. [arxiv]
  • Proposal for Constrained Generics and Module Extensions for Chapel. Feb. 2011 [pdf]
  • Blame for All. In POPL 2011. [bib]
Teaching Students
  1. Geoffrey Belter (Optimization of linear algebra kernels)
  2. Joseph Blomstedt (Parallel Compilers)
  3. Weiyu Miao (Generic Programming, Metaprogramming)
  4. John Michalakes (High-Performance Computing for Wind Energy Research)
  5. Thomas Nelson (Optimization of linear algebra kernels)
  6. Erik Silkensen (Extensible Syntax)
  7. Jonathan Turner (Chapel Programming Language)
  8. Michael M. Vitousek (Gradual Python)
  9. Shashank Bharadwaj (Gradual Python)
  10. Neelam Agrawal (Chapel)
  11. Christopher Poulton (Gradual Python)
Alumni
  1. Sri Teja Basava (National Instruments)
  2. Ian Karlin (Post-doc in Sweden)
  3. Justin Gottschlich (Intel Research Labs)
    Ph.D. thesis: Invalidating Transactions: Optimizations, Theory, Guarantees, and Unification
  4. Moss Prescott
    M.S. thesis: Speaking for the Trees: a New (Old) Approach to Languages and Syntax
  5. Christopher Schwaab
  6. David Broman
    Ph.D. thesis: Meta-Languages and Semantics for Equation-Based Modeling and Simulation

Interesting Quotes

If you can't solve a problem, then there's an easier problem you can solve: find it. - George Polya
Writing is best done by coinduction! - Lynn Winebarger
Resources
  • Advice regarding writing research papers, giving research talks, and writing grant proposals, from one of the best, Simon Peyton-Jones.
  • Cheat sheet for getting a job in Embedded Software (created by Qualcomm). PDF.
  • Guidelines for Ph.D. Preliminary Exam Computer Engineering URL.