Please note: This seminar will be given online.
Ningning Xie, Research Associate
Department of Computer Science and Technology
University of Cambridge
Computer development has come a long way. Along with the evolution of computers, advances in high-level programming languages allow us to write large-scale software systems easily. While new language features significantly extend the language expressive power, they often lack theoretical development and lead to subtle implementation bugs. Moreover, while high-level languages abstract over low-level aspects and thus eliminate many sources of errors, the abstraction often comes with a runtime penalty that results in inefficient low-level code.
In this talk, I will show how to apply programming language theory to practical programming to offer strong static safety and efficiency guarantees in three domains: language design, runtime systems, and machine learning systems. First, I will briefly go through type-theoretical formalization of language features, including type inference for dependent types in algebraic datatype declarations. The formalization has guided real-world language implementations. Then, I will demonstrate that programming language theory reaps benefits beyond safety. I will present Perceus, a garbage-free reference counting algorithm with reuse, that supports high-level programming while preserving low-level efficiency. Perceus delivers competitive performance compared to state-of-the-art memory reclamation implementations. Finally, as part of a vision to make programming languages broadly applicable, I will discuss my efforts to apply programming language techniques to machine learning systems, by presenting a program synthesis framework that accelerates large-scale distributed machine learning on hardware platforms.
Bio: Ningning Xie is a research associate at the University of Cambridge. She received her Ph.D. in Computer Science at the University of Hong Kong in 2021. Her research interests are in the field of programming languages, where she applies programming language theory to a variety of domains, including language design, runtime and compiler systems, and machine learning systems. In the last two years of her Ph.D. study, Ningning had research visits at Microsoft Research Redmond and DeepMind London. Her research has been recognized by ACM SIGPLAN Distinguished Paper awards at the Symposium on Principles of Programming Languages (POPL 2020) and the Conference on Programming Language Design and Implementation (PLDI 2021).
To join this seminar on Zoom, please go to https://uwaterloo.zoom.us/j/91656484008.
Please note: The passcode will be provided by email a week before the seminar as well the morning of the seminar.
200 University Avenue West
Waterloo, ON N2L 3G1