My First Fifteen Compilers
We sometimes think of the number of passes in a compiler as a measure of the compiler’s complexity. But what if we could make compiler development more approachable by fully embracing the ide…
The Blog of the ACM Special Interest Group on Programming Languages
Visit blog.sigplan.org → RSS feedOn Hacker News Jul 2019 – Aug 2025
Software Engineering 4Programming Languages 3Math & Algorithms 2Systems & Performance 1History & Retro Computing 1Career & Management 1
We sometimes think of the number of passes in a compiler as a measure of the compiler’s complexity. But what if we could make compiler development more approachable by fully embracing the ide…
In computer science, conferences are a focal point of academic attention. Conferences are a moment where computing communities—distributed over the globe—come together. Giving a talk at a conferenc…
Jean-Luc Godard is quoted as saying, “A story should have a beginning, a middle and an end, but not necessarily in that order.” What order is best to tell the story of a compiler?
Neural networks are more useful when placed in a suitable, specialized environment.
You have heard your grandmother tell you many times: parallel programming is hard. In 2022, does it still have to be? Back in grandma’s heyday, they knew a cool and breezy way to do paralleli…
Research in programming languages offers powerful tools, but our systems of notation stymie outsiders. Can we change our notational approach and broaden our audience—without compromising on c…
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…
Everyone uses math libraries. Surprisingly, mainstream math libraries do not produce correct results for several thousands of inputs. Developers are seldom aware of them, which affects reproducibil…
Programming languages papers often talk about usability advantages, but the evaluation sections of these papers tend to focus on performance or semantic guarantees. What if we applied methods from …