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.
Ideas from PL research, such as functional combinators, behavioural types, and compiler correctness proofs, can be applied to distributed systems, facilitating their understanding, implementation, and formal verification.
We share the results of a DARPA ISAT study, I-USHER: Interfaces to Unlock the Specialized HardwarE Revolution, arguing for new hardware/software interfaces to enable the revolution promised by hardware specialization.
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.
Reactive frameworks are very popular on the Web today, but they were unknown a decade ago. As creators of an early project in this space, we recount its origins and the unusual approach we took to writing an academic research paper about it.