Registered user since Mon 28 Aug 2017
I am a software engineer at Google, working on programming tools. I recently completed my Ph.D. in the Department of Computer Science at Tufts University. My advisor was Sam Guyer, and I was part of the RedLine Research Group.
I am interested in modern language runtimes, such as the Java Virtual Machine. These runtimes are immensely complicated, providing advanced services such as JIT compilation, dynamic optimization, garbage collection, concurrency management, and dynamic classloading. These features improve programmer productivity at the expense of transparency; because the JVM can transform the programmer’s code in unexpected ways, it becomes very difficult to predict the performance and correctness properties of the program. In addition, these features encourage the creation of ever-larger programs, making it increasingly difficult for any one person to understand a large project.
My research focuses on providing tools to help programmers better understand their programs. One of my projects leverages the garbage collector in a Java virtual machine to check programmer-provided heap assertions at low cost. Another project provides a visualization tool that can display the contents of the heap in a running Java program. This tool uses a novel summarization algorithm to reduce the complexity of the heap graph, and it provides an interactive interface that allows the user to explore the heap graph from a bird’s-eye view down to an individual object and its field values.
|PLDI 2016||Committee Member in External Review Committee|
|Show activities from other conferences|
View general profile