Technical Talk: What Is Programming Languages Research?
What do PL researchers do? Yes, they work on, well, programming languages, but PL research is broader than designing and implementing new languages. To me, a PL researcher is someone who views the programming language as having a central place in solving computing problems. From this vantage point, PL researchers tend to focus on developing general abstractions, or building blocks, for solving problems, or classes of problems. PL research also considers software behavior in a rigorous and general way, e.g., to prove that (classes of) programs enjoy properties we want, and/or eschew properties we don’t. This approach has proven to be very valuable for solving a wide ranging set of problems. In this talk I will flesh out this perspective and draw examples from several different problem areas (including security, quantum computation, and machine learning, along with others) to illustrate how PL is making a contribution.
Michael Hicks is a Professor in the Computer Science department and UMIACS at the University of Maryland, where he co-directs the laboratory for Programming Languages research (PLUM); he is the former Director of the Maryland Cybersecurity Center (MC2) and the Past Chair of ACM SIGPLAN.
His research focuses on using programming languages and analyses to improve the security, reliability, and availability of software. He is perhaps best known for his work exploring dynamic software updating, a technique with which software can be updated without shutting it down. He has explored the design of new programming languages and analysis tools for helping programmers find bugs and software vulnerabilities, and for identifying suspicious or incorrect program executions. He was worked has combined ideas from PL and cryptography, e.g., to ensure privacy preserving computations. He also leads the development of a new security-oriented programming contest, “build-it, break-it, fix-it,” which has been offered to the public and to students in his Coursera class on software security. He has recently begun to explore programming languages for quantum computation.
Tue 15 JanDisplayed time zone: Belfast change
14:00 - 15:30
|Technical Talk: How to Think about Types|
Frank Pfenning Carnegie Mellon University, USAPre-print File Attached
|Technical Talk: What Is Programming Languages Research?|
Michael Hicks University of Maryland, College ParkPre-print File Attached