REBLS Keynote - Self-Adjusting Computation: Practical Abstractions for Dynamic Software
Developing efficient and reliable software is a difficult task. Rapidly growing and dynamically changing data sets further increase complexity by demanding higher efficiency and performance. In this talk, I will present practical and powerful abstractions for taming software complexity in this domain. Together with the algorithmic models and programming-languages that embody them, these abstractions enable designing and developing efficient and reliable software by using high-level programming techniques. As evidence for their effectiveness, I will present results from a broad range of applications including sophisticated algorithms in geometry, machine-learning, and large-scale cloud computing. On the theoretical side, we will see that asymptotically significant improvements in efficiency are possible. On the practical side, we will discuss several programming-language extensions that can realize these theoretical outcomes in practice.
Bio: Umut Acar is an Associate Professor at Carnegie Mellon University. He obtained his Ph.D. at Carnegie Mellon University (2005), and his M.A. and B.S. degrees at University of Texas at Austin and Bilkent University. Between 2005 and 2012, he was a researcher in Toyota Technological Institute and Max Planck Institute for Software Systems. Acar’s research interests span programming languages, algorithms, and software systems.