His research interests are in compiler generation, programming language implementation, programming environments and tools. He is the leader of the Kiama project that aims to transfer research results from software language engineering and functional programming to the developer community.