Research Interests

To understand and reason about code, we (=humans) combine its highly structured, formal nature with ambiguous information in the identifier names, comments, and coding idioms. Can we devise computational methods that replicate this form of reasoning? I research machine learning models and methods that "understand" and generate code. My objective is to invent better machine learning methods for semi-structured reasoning, and to inspire novel software engineering tools that will assist developers in their work.

I am currently a principal researcher at Microsoft Research in Cambridge, UK and part of the Deep Program Understanding project in the Machine Intelligence group.

Highlighted Publications

Full list of publications