The TCP/IP protocols and Sockets API underlie much of modern computation, but their semantics have historically been very complex and ill-defined. The real standard is the de fact...
Steve Bishop, Matthew Fairbairn, Michael Norrish, ...
Functional programmers often reason about programs as if they were written in a total language, expecting the results to carry over to non-total (partial) languages. We justify su...
Nils Anders Danielsson, John Hughes, Patrik Jansso...
In POPL 2002, Petrank and Rawitz showed a universal result-finding optimal data placement is not only NP-hard but also impossible to approximate within a constant factor if P = NP...
Given a program and two variables p and q, the goal of points-to analysis is to check if p can point to q in some execution of the program. This well-studied problem plays a cruci...
There are now a number of bidirectional programming languages, where every program can be read both as a forward transformation mapping one data structure to another and as a reve...
J. Nathan Foster, Alexandre Pilkiewicz, Benjamin C...