Working through a programming exercise, we see that Lisp’s “Code is data” philosophy is a natural enabler for program synthesis.
POPL is the premiere conference on the theoretical foundations of programming languages. The PC Chair, General Chair, and Steering Committee Chair of POPL 2020 review this year’s event.
An impressive number of transformations in both compilers and in ordinary programming are special cases of a transformation called “defunctionalization.” This post explains what it is and the many places it’s useful.
Runtime Support for Multicore Haskell (ICFP’09) was awarded the SIGPLAN ten-year most-influential paper award in 2019. In this blog post we reflect on the journey that led to the paper, and what has happened since.
We accept that data structure determines program structure. But we should not forget that it is not just the input data that may be structured: output data may be structured too, and both may determine program structure.