Jeremy Siek is an Associate Professor of Computer Science in the School of Informatics and Computing at Indiana University. Jeremy teaches courses in programming, programming languages, compilers, logic, and other areas of computer science. Jeremy designs new language features to help programmers create and use software libraries and domain-specific languages, especially generic and high-performance ones. In particular, Jeremy invented the gradual typing approach to mixing static and dynamic type checking within the same language. Prior to that, Jeremy authored the Boost Graph Library and attempted to add concepts to C++. Jeremy is a member of the Programming Languages Group at IU and the Center for Research in Extreme Scale Technologies (CREST).
I’ve been fortunate to see some of my ideas get used in the software industry:
- Facebook has added gradual typing to PHP. See the article in Wired magazine.
- The implicits feature of Scala was inspired by my work on concepts for C++.
Recent Papers and Talks
- Big Types in Little Runtime. Michael M. Vitousek, Cameron Swords, and Jeremy G. Siek. Accepted for POPL 2017.
- Automatically Generating the Dynamic Semantics of Gradually Typed Languages. Matteo Cimini, Jeremy G. Siek. Accepted for POPL 2017. arXiv
- Gradual Typing in an Open World. Michael M. Vitousek and Jeremy G. Siek. arXiv
- The key to blame: gradual typing meets cryptography. Jeremy G. Siek and Philip Wadler. July 2016 draft
- Gradual Type Systems at ECOOP 2016 Summer School. slides
- The Semantics of ParalleX, v1.0. Matteo Cimini, Jeremy G. Siek, and Thomas Sterling. IU Comp. Sci. TR726. May 2016.
- Talk: Generating Gradual Typing Systems with the Gradualizer. University of Cambridge. April 2016.
- The recursive union of some gradual types. Jeremy G. Siek and Sam Tobin-Hochstadt. WadlerFest 2016. slides pdf
- Blame for All (revised), Amal Ahmed, James T. Perconti, Jeremy G. Siek, and Philip Wadler. draft pdf
Previous courses at Univ. of Colorado:
CS MS Student Advising
I am available for walk-in advising in my office (LH 230D) on Tuesdays at 9:00-10:00AM and Fridays at 1:00-2:00pm during the Fall 2016 semester. If you have a question about fulfilling your MS degree requirements, prior to coming to my office, send me an email with a list of your courses organized by how they fulfill the degree requirements. Each course should be listed only a single time. The subject line of the email should be “CS MS:”. Students who have followed these instructions will be prioritized over students who have not. If you cannot make it to the walk-in time, you may also send me email, and I will read and respond to those emails during the walk-in advising time, but giving priority to students who are there in person.
Information for Students at IU
Students and Post-Doc’s
- Michael M. Vitousek (Ph.D. student, Gradual Python, i.e., Reticulated)
- Chris Wailes (Ph.D. student, Parallel Programming Languages)
- Andre Kuhlenschmidt (Ph.D. student, Compilation of Gradually Typed Languages)
- Deyaaeldeen Almahallawi (Ph.D. student, Compilation of Gradually Typed Languages)
- Spenser Bauman (Ph.D. student, Meta-tracing JIT for Racket)
- Zeina Migeed (On co-op from Northeastern Univ.)
- Di Zhong (Undergraduate Research in Gradual Typing)
- Matteo Cimini (Post-doc, Automating Gradual Typing)
- Steev Young (Undergraduate Research in Gradual Typing)
- Josie Bealle (Summer Research Opportunity in Computing)
- Andre Yuri (Summer Research Opportunity in Computing)
- Weiyu Miao (Generic Programming, Metaprogramming)
- Geoffrey Belter (Apple)
Ph.D. thesis: Efficient Generation of Sequences of Dense Linear Algebra through Auto-Tuning
- Shashank Bharadwaj (VMware)
- Jonathan Turner (Microsoft Typescript => Mozilla Rust)
- Erik Silkensen (Flatiron Solutions)
- Neelam Agrawal (National Instruments)
- Sri Teja Basava (National Instruments)
- Ian Karlin (Postdoc at Lawrence Livermore National Laboratory)
- Justin Gottschlich (Parallel Computing Lab @ Intel Labs)
Ph.D. thesis: Invalidating Transactions: Optimizations, Theory, Guarantees, and Unification
- Moss Prescott (SlamData)
M.S. thesis: Speaking for the Trees: a New (Old) Approach to Languages and Syntax
- Christopher Schwaab (Ph.D. student at the Univ. of St. Andrews)
- David Broman (Assoc. Prof. at KTH Royal Inst. of Tech., Sweden)
Ph.D. thesis: Meta-Languages and Semantics for Equation-Based Modeling and Simulation