Primary Research Area
- Computers and Education
For more information
My research asks the question "Can we build computers that are fast and easy to program?" Moore's law enables the construction of massive processor arrays with amazing peak throughput, but exploiting the potential of such an architecture generally requires programmers to consider the target implementation when writing their programs. I believe that programmers have enough to worry about without such considerations. Programmers should be free to program at the highest possible level of abstraction to maximize their productivity and to focus on the correctness, reusability, and maintainability of their code. Performance should not be their concern. Instead, a high performance execution should be derived automatically from the high-level program specification provided by the programmer.
- computer architecture, compiler construction, dynamic optimization, program profiling, speculation, general-purpose processors, managed languages, dynamic languages, computer science education, concept inventories