Nowadays, most programs we write are in some sense distributed—making HTTP requests or serving responses over HTTP, fetching or computing data on some remote resource, building some microservice that is meant to interact with others, etc. With all of this distribution going on, one might ask, what happened to distributed programming languages? Why are we still using languages like Java or C++ for these sorts of tasks? In this talk, Heather will take us on a whirlwind tour through history up to the present of distributed programming languages as well as programming constructs meant for distribution like futures and RPC. Together, we’ll try to work out what happened to all of the distributed programming languages!
Heather is an Assistant Professor in the School of Computer Science at Carnegie Mellon University. Before that, she was the co-founder and Executive Director of the Scala Center at EPFL, where she was also a research scientist, as well as an Assistant Clinical Professor at Northeastern University. She recently completed her PhD in EPFL’s Faculty of Computer and Communication Science where she contributed to the now-widespread programming language, Scala. Heather’s research interests are at the intersection of data-centric distributed systems and programming languages, with a focus on transferring her research results into industrial use. She has also led development of popular MOOCs some 1 million students strong, such as “Functional Programming Principles in Scala.”