Dan Grossman

Professor and Vice Director
Paul G. Allen School of
Computer Science & Engineering

University of Washington
Box 352355
Seattle, WA 98195-2355

djg@cs.washington.edu
206-616-1124
picture of Dan

My office is in the spectacular Bill & Melinda Gates Center for Computer Science & Engineering Room 309. The easiest way to find Gates Center 309 (aka CSE2 309) is to take one of the two side-by-side elevators to the third floor, turn left out of the elevator, then turn left again.

See also:

Teaching

I have a free programming-languages course on Coursera

Materials I have packaged for others to use and adapt

  1. CSE190B Freshman Direct-Admit Seminar
    1. Au24
    2. Au23
    3. Au22
    4. Au21
  2. CSE480 Computer Ethics (formerly CSE492E)
    1. Au23
    2. Au22
    3. Sp22
    4. Au21
    5. Wi21
    6. Sp20
  3. CSE341 Programming Languages
    1. Sp23
    2. Wi23
    3. Wi22
    4. Sp21
    5. Sp19
    6. Au18
    7. Au17
    8. Sp17
    9. Sp16
    10. Sp13
    11. Wi13
    12. Au11
    13. Sp08
    14. Wi08
    15. Au04
    16. Sp04
  4. CSE492L Alumni Career Experience Seminar (formerly Leadership Seminar Series and/or CSE390L)
    1. Wi23
    2. Wi22
    3. Wi21
    4. Wi20
    5. Wi19
    6. Wi18
    7. Wi17
    8. Wi16
  5. CSE390B Building Academic Success through Bottom-Up Computing
    1. Sp20
  6. CSE331 Software Design and Implementation
    1. Au19
    2. Sp15
    3. Au14
    4. Wi14
  7. CSE351 The Hardware/Software Interface
    1. Sp18
    2. Wi16
  8. CSEP505 Programming Languages
    1. Au16
    2. Wi09
    3. Sp06
  9. CSE373 Data Structures & Algorithms (for non-majors)
    1. Au13
  10. CSE505 Concepts of Programming Languages
    1. Au12
    2. Wi12
    3. Au09
    4. Au08
    5. Au07
    6. Au06
    7. Au05
    8. Au03
  11. CSE332 Data Abstractions
    1. Sp12
    2. Sp10
  12. Harvard CS152 Programming Langauges
    1. Sp11
  13. CSE142 Computer Programming I
    1. Sp09
  14. CSE303 Concepts and Tools for Software Development
    1. Sp07
    2. Wi06
    3. Sp05
  15. CSE506 Advanced Topics in Programming Languages
    1. Wi07
  16. CSE590dg Language-Based Techniques for Improving C-Level Software Quality
    1. Wi04
Students

Ph.D. Students

Current Advisees:

Ph.D. Graduates and Their Dissertations:

Tom Bergan, Google, coadvised with Luis Ceze
Avoiding State-Space Explosion in Multithreaded Programs with Input-Covering Schedules and Symbolic Execution
James Bornholt, University of Texas, coadvised with Luis Ceze and Emina Torlak
Optimizing the Automated Programming Stack
Joe Devietti, University of Pennsylvania, coadvised with Luis Ceze
Deterministic Execution for Arbitrary Multithreaded Programs
Laura Effinger-Dean, Google
Interference-Free Regions and Their Application to Compiler Optimization and Dynamic Data-Race Detection
Colin Gordon, Drexel University, coadvised with Michael Ernst
Verifying Concurrent Programs by Controlling Alias Interference
Benjamin Lerner, Northeastern University
Designing for Extensibility and Planning for Conflict: Experiments in Web-Browser Design
Kristi Morton, coadvised with Magdalena Balazinska and Hannaneh Hajishirzi
Interactive Data Integration and Entity Resolution for Exploratory Visual Data Analytics
Eric Mullen, Google, coadvised with Zach Tatlock
Pushing the Limits of Compiler Verification
Chandrakana Nandi, Certora, Inc., coadvised with Zach Tatlock
Programming Language Tools and Techniques for Computational Fabrication
Daniel Perelman, Microsoft, coadvised with Sumit Gulwani (MSR)
Program Synthesis Without Full Specifications for Novel Applications
Michael Ringenburg, Cray, coadvised with Luis Ceze
Dynamic Analyses of Result Quality in Energy-Aware Approximate Programs
Talia Ringer, University of Illinois
Proof Repair
Adrian Sampson, Cornell University, coadvised with Luis Ceze
Hardware and Software for Approximate Computing
John Toman, Certora, Inc.
Learning to Adapt: Analyses for Configurable Software
Luis Vega coadvised with Luis Ceze
Programming Abstractions and Efficient Compilation Techniques for Modern FPGAs
Benjamin Wood, formerly Wellesley College, coadvised with Luis Ceze
Software and Hardware Support for Data-Race Exceptions
Bill Zorn, Intel, coadvised with Zach Tatlock
Rounding

Research

My primary research area is programming languages, encompassing theory, implementation, and design. However, I have collaborated broadly, with applications in computer architecture, software engineering, large-scale data processing, and computational fabrication.

For specific work, see publications and presentations

For projects and news, see the UW PLSE group.

Some of my older projects are on other, sometimes outdated-but-preserved-for-posterity group pages: Sampa group, older plse page, even older WASP page.

Professional Activities

Boards and Such

  1. 2014–2023
    1. CRA Board
  2. 2018–2021
    1. PLDI Steering Committee
  3. 2013–2017
    1. ACM Education Board
  4. 2011–2013
    1. Computing Curriculum: Computer Science 2013 Steering Committee
  5. 2010–2017
    1. ACM Education Council
  6. 2009–2012
    1. SIGPLAN Executive Committee
  7. 2009–2012
    1. SIGPLAN Programming Langauges Education Board

Chair

  1. 2022
    1. PLDI Diversity Chair
  2. 2021
    1. PLDI Diversity Chair
  3. 2020
    1. CRA Career Mentoring Workshop Co-Chair
  4. 2018
    1. PLDI Program Chair
  5. 2016
    1. CRA Career Mentoring Workshop Co-Chair
  6. 2013
    1. PLDI Tutorials Chair
  7. 2009
    1. TRANSACT Program Chair
  8. 2008
    1. UW/MSR Institute
  9. 2007
    1. PASTE Co-Chair
    2. Oregon Summer School Co-Chair
  10. 2006
    1. Oregon Summer School Co-Chair
  11. 2004
    1. ICFP Poster Session Chair

Program Committee

  1. 2025
    1. ASPLOS
    2. PLDI
  2. 2023
    1. OOPSLA
  3. 2022
    1. ICFP
  4. 2017
    1. PLDI
  5. 2016
    1. ICFP
  6. 2015
    1. ASPLOS
  7. 2014
    1. PLDI
    2. LWMOOC
    3. APPROX
    4. WACAS
  8. 2013
    1. SPLASH-E
  9. 2012
    1. ASPLOS
    2. PLDI
  10. 2011
    1. POPL
    2. VEE
  11. 2010
    1. TLDI
    2. TRANSACT
    3. SPAA
    4. PLDIFIT
  12. 2009
    1. ISMM
    2. OOPSLA
  13. 2008
    1. DAMP
    2. ISMM
    3. ML
  14. 2007
    1. POPL
    2. CC
    3. PEPM
    4. OOPSLA
  15. 2006
    1. TRANSACT
    2. MSPC
  16. 2005
    1. BUGS
  17. 2004
    1. PLDI
    2. PASTE

The Rest

I use my Facebook page regularly — if I have met you (including students, colleagues, etc.), please feel free to send me a friend request. My Twitter is mostly puns with occasional substance.

I joined UW CSE longer ago than 82 of 98 (84%) other current faculty members (reflecting arrivals/departures through December 2024).

A nice alumni-profile write-up of me from my undergraduate institution, March 2017, unpacks a few of the random events that led to where I am.

My academic genealogy:

              me
              |
        Greg Morrisett
        /            \
   Robert Harper   Jeannette Wing
       |               |
  Robert Constable  John Guttag
       |               |
  Stephen Kleene    Jim Horning
       |               |
  Alonzo Church     Jerome Feldman
       |               |
        \            Alan Perlis
         \             |
          \         Philip Franklin
           \         /
         Oswald Veblen     
              |               
          E.H. Moore        
              |
          H.A. Newton
              |
       Michael Chasles
              |
       Simeon Poisson
          /        \
 Joseph Lagrange  Pierre-Simon Laplace
         |               |
  Leonhard Euler   Jean Le Rond d'Alembert
         |
  Johann Bernoulli
         |            
   Jacob Bernoulli  
         |
  Nicolas Malebranche
         |
 Gottfried Wilhelm Leibniz

Last updated: October 2024