I am a researcher at Max Planck Institute for Software Systems, where I lead the Programming Languages and Systems Group. Previously, I was an assistant professor at the Toyota Technological Institute and the University of Chicago. I received my Ph.D. at Carnegie Mellon University's Department of Computer Science. I am interested in most aspects of programming languages and systems, especially those that overlap with algorithms and parallelism. I am a co-inventor of self-adjusting computation and the co-creator of the CEAL and the DeltaML languages for self-adjusting computation. I co-invented several sequential and parallel algorithms, including algorithms for dynamic trees, dynamic and kinetic meshing, and statistical learning. I am a designer of an efficient, incremental system for large-scale data processing. My first result as a researcher was bounds on the data locality of the popular work-stealing algorithm for parallel scheduling, and an affinity-guided work-stealing algorithm, which is used by Intel's Threading Building Blocks (TBB). I currently work on problems related to parallel computing, self-adjusting computation, and provenance.
"One of the most striking features of recent discussions in the history and philosophy of science is the realization that events and developments [...] occurred only because some thinkers either decided not to be bound by certain ‘obvious’ methodological rules, or because they unwittingly broke them. This liberal practice, I repeat, is not just a fact of the history of science. It is both reasonable and absolutely necessary for the growth of knowledge." ---- Paul Feyerabend
Announcements
Research Projects
Research GroupCurrent members
Alumni
Recent Interns
Max Planck Institute for Software Systems Max Planck Institute for Software Systems Past
Professional ActivitiesEditor
Program Committees
Keynotes, Distinguished Lectures, Summer Schools
Invited Workshop Presentation
|
