Select Page

PL Perspectives

Perspectives on computing and technology from and for those with an interest in programming languages.
Bad Reasons to Reject Good Papers, and vice versa

Bad Reasons to Reject Good Papers, and vice versa

Peer review is an essential aspect of academic research, giving a feedback loop that stimulates and rewards high-quality work – but as we all know, it doesn’t always function well. To help maintain a consensus of what constitutes good reviewing, this note spells out some bad and good reasons to reject and accept papers.

Read more...

Neural network verification: Where are we and where do we go from here?

Neural network verification: Where are we and where do we go from here?

Deep learning has transformed the way we think of software and what it can do. But deep neural networks are fragile and their behaviors are often surprising. In many settings, we need to provide formal guarantees on the safety, security, correctness, or robustness of neural networks. In this post, I will talk about the verification problem for neural networks and some of the prominent verification techniques that are being developed. I will also discuss the great challenges that our community is well positioned to address and some of the ideas that we can port from the machine-learning community.

Read more...

The Return of the Unix Shell

The Return of the Unix Shell

With about half a century of life, the Unix shell is pervasive and entrenched in our computing infrastructure—with recent virtualization and containerization trends only propelling its use. A fresh surge of academic research highlights show potential for tackling long-standing open problems that are central to the shell and enable further progress. A recent panel discussion at HotOS ’21 concluded that improvements and research on the shell can be impactful and identified several such research directions. Maybe it’s time for your research to be applied to the shell too?

Read more...

The Story of the Flash Fill Feature in Excel

The Story of the Flash Fill Feature in Excel

My POPL 2011 “Flash Fill” paper was the most important turning point in my research career. I went from searching for the hardest problem I can solve to searching for the simplest problem that will have the most impact. It sensitized me to customer connection and enlightened me to how practical requirements can inspire foundational research ideas and directions. And most of all, it led to a blissful connection with my loved ones.

Read more...

Specification Synthesis with Constrained Horn Clauses

Specification Synthesis with Constrained Horn Clauses

The problem of program verification is to find whether a program meets its specification. But if a program calls functions whose bodies are missing, the verification aims at finding the most general implementations of these functions. In this post we show how advances in automated reasoning allow for doing it efficiently.

Read more...