I am a fifth year PhD student in the Computer Science and Engineering department at the University of Washington. I am planning to graduate in the summer of 2019. I work in the PLSE group and I am advised by Dan Grossman. I’ve also collaborated with Emina Torlak.
I’m interested in using program analysis to solve practical software engineering problems and improving the soundness and precision of analyses on difficult-to-analyze, framework-based applications. My research vision is outlined in my SNAPL ‘17 paper.
My prior research has used static analysis to find consistency errors in programs that interact with dynamic execution environments, techniques from model checking to check for memory safety errors in Rust, dynamic taint analysis to find bugs in dynamic configuration update schemes, and type systems and program instrumentation to find type errors in Ruby programs. You can find links to all of my publications below, or look at my CV.
I received my BS in Computer Science at the University of Maryland, College Park. My honors project - which helped develop an undergraduate PL curriculum - was advised by Dr. Jeffrey Foster. I also had the pleasure of working with Dr. Michael Hicks.
Concerto: A Framework for Combined Concrete and Abstract Interpretation
John Toman and Dan Grossman. In POPL ‘19. To appear.
Staccato: A Bug-Finder for Dynamic Configuration Updates.
John Toman and Dan Grossman. In ECOOP ‘16.
Winner: Distinguished Artifact Award and Distinguished Poster Award.
Paper (PDF) | GitHub | Web | Talk (YouTube) | Artifact