What would you ask Simon Peyton Jones?
I have long aspired to interview Simon Peyton Jones, whom I consider the most articulate and charismatic figure in the functional programming community. What makes him even more remarkable is his approachability; I reached out to him on LinkedIn—thinking, why not?—and he actually responded. I was so astonished that I initially thought the reply might have come from his son, Michael, whom I occasionally encounter due to my involvement with Cardano and Plutus.
For years, I’ve dreamed of hosting a podcast where I interview my heroes, blending in crowd-sourced questions alongside my own.
I aim to pose truly insightful questions about the developmental journey of Haskell. I’m uncertain whether I need to center the interview around the publication of his most recent project, Verse, to secure his participation.
Additionally, what areas should I research heavily? I am versed in category theory and functional programming. But, I think I would need to read up on lambda calculus to sufficiently talk about it.
However, I am more inclined to delve into the profound insights he offers on deeper topics, as discussed by other equally eloquent Haskell core developers like Phil Wadler on the CoRecursive podcast. To me, some of the finest podcasting I’ve ever encountered was an episode where Phil Wadler talks about “God’s Programming Language” and reads letters between the pioneers of lambda calculus, at one point remarking that “the laws of programming languages aren’t invented; they are discovered.”
Another remarkable moment in podcasting was this whirlwind episode with John Wiegley, where he discusses some truly otherworldly research he has conducted.
SPJ left Microsoft a couple of years ago but I don’t remember what he is doing now. Does he still develop GHC?
I wonder what he thinks of:
-
The idea of using AI for automatic code synthesis in dependently typed languages. The idea is that if the (human-written) types are precise enough and the code is effect-free, you avoid the hallucinations and other issues with current LLM-generated slop/code. Of course being able to generate code with an arbitrary type amounts fo AGI-level automated reasoning, but it’s ok to accept limitations on how powerful it can be.
-
Whether Haskell itself still excites him and if not, what does. Does he like Idris? Maybe Lean? And on the low level effectful side, what about Rust? What does he think are the current exciting ideas in PLT (programming language theory), and for that matter in general?
-
Is he familiar with Ben Lippmeier’s dissertation about Discus, formerly called the Disciplined Disciple Compiler (DDC)? It had a very interesting critique[1] of Haskell in its first chapter, that motivated the DDC language design, that used effect types to track memory mutation. The language never caught on and might not have really been usable, but the motivation for it seemed mostly valid to me. So I wondered if Haskell has any answers to that section of the thesis.
[1] https://benl.ouroborus.net/papers/2010-impure/lippmeier-impure-world.pdf start at page 17.
I may think of some other things to add.
Thanks so much! These are great questions.
-