The Haskell Interlude is Haskell-focused podcast where we interview guests from the Haskell community. The hosts are Joachim Breitner, Andres Löh, Matthías Páll Gissurarson, Wouter Swierstra and Niki Vazou.
In this farewell interview with David Thrane Christiansen, the outgoing Executive Director of the Haskell Foundation, hosts Wouter Swierstra and Matthías Páll Gissurarson use the opportunity to reflect on his tenure as ED, the recent history of the Haskell Foundation, where the HF is going and what consider if you want to apply for the role of Executive Director of the HF.
This episode’s guest is Ranjit Jhala. We discuss how Ranjit developed Liquid Haskell as a litmus test, because if Haskell programmer’s won’t use Liquid Types, no one will. We also hear how writing Haskell is a joy and how you should never underestimate your students.
Arnaud Spiwack is interviewed by Matthías Páll Gissurarson and Joachim Breitner. We learn all about linear types in Haskell, how linear types go beyond Rust’s ownership system and why it’s not always best to type check everything in core. We conclude with a peek into the many activities of Arnaud’s employer, Tweag.
In this episode, Bartosz Milewski is interviewed by Wouter Swierstra and Andres Löh. Bartosz shares his thoughts on the “fringe topics” in programming, from C++ templates to category theory in Haskell. How he considers monads to be like fingers sticking out of the water. And he’ll talk a little bit about his upcoming book and his thoughts on linear types.
Joachim Breitner went to ZuriHac 2023 in order to bring the spirit of the biggest Haskell community event to you. He talks to Farhad Mehta, Tomáš Janoušek, Christian Georgii, David Thrane Christiansen, Artin Ghasivand, Hannes Siebenhandl, Michael Peyton Jones and Ben Lynn.
In this episode Niki Vazou and Mattias Pall chat with Richard Eisenberg. Richard is currently a language designer at Jane Street, he is the chair of the board at the Haskell Foundation and known for his work on the GHC compiler. Today we talk about dependent types in Haskell, how to get involved with GHC and Haskell foundation and how Haskell and Ocaml are different, for example, functor means a totally different thing in the two languages.
In this episode Christiaan Baaij is interviewed by Wouter Swierstra and Mattias Páll. Christiaan talks about his work on the Clash compiler, what it is like to found your own company, his desire for ergonomic dependent types, and the foundations to all his success, namely capitalising on luck.
Errata: Around the 21m19s mark Christiaan talks about “his“ contributions to GHC with regards to dynamic linking on OSX. Later he remembered that it was actually Moritz Angermann who worked on the symbol limit restrictions. However, Christiaan did some other work on OSX linking and some of the RPATH handling.
In this episode Simon Marlow talks with Andres Löh and Matthias Pall. Simon is a long time GHC contributor, currently working at Meta. He talks about compiling functional languages via C and the Evil Mangler, the importance of using parallelism and its impact on garbage collection, and about using Haskell in the real world via Sigma, Haxl, and Glean.
In this episode Joachim Breitner and Wouter Swierstra talk to Andrew Lelechenko, also known as Bodigrim. Bodigrim went from a being a mathematician to a failed PHP developer the chair of the Core Libraries Committee. In this episode, we discuss whether he prefers number theory or Haskell, whether he prefers working with compilers or PHP frameworks, and whether he prefers high salaries for Haskell developers or breaking changes to the
In this episode Andres Löh and Niki Vazou chat with Jeremy Gibbons. Jeremy Gibbons is professor at Oxford and talks about his journey from Orwell to Haskell, how to teach Haskell and specification languages to undergraduates as well as professional programmers, how programming languages should keep simple things simple, and how paper writing can or even should be like poetry.
In this episode Wouter Swierstra and Joachim Breitner chat with Ben Gamari. Ben is a consultant at Well-Typed known for his work at GHC. Ben tells us a little bit about his switch from Python to Haskell but not because he was missing the static typing, how programming his thermostat lead him to a career in the compiler development, and what it’s like to be a GHC force multiplier.
In this episode Andres Löh and Niki Vazou talk with Alejandro Russo. Alejandro is a professor at Chalmers University in Gothenburg Sweden, he is an enthusiastic functional programmer as well as a researcher in the fields of security and privacy. He talks about the unique strengths Haskell has in these areas and how to move research ideas into industry.
In this episode Matthías Páll and Andres Löh talk with Andrey Mokhov. Andrey is best known for his work on the Hadrian build system and today he talks about algebraic graphs, selective functors, and the difference between OCaml and Haskell.
In this episode Jesper Cockx, one of the main Agda developers, is interviewed by Niki Vazou and Matthias Pall. They talk about how to explain dependent types to one’s father, how Agda’s automation and proof search work, and how Agda can be used to verify Haskell code bases.
In this episode Marc Scholten is interviewed by Andres Löh and Joachim Breitner. They talk about the Integrated Haskell Platform web framework (IHP), implicit parameters and nix.
In this episode Matthias Pall Gissurarson & Jimmy Koppel are interviewed by Wouter Swierstra and Niki Vazou. They talk about program synthesis, typed holes, program repair, and generating properties using a new technique called ECTAs.
Ningning Xie is interviewed by Niki Vazou and Andres Loh. Ningning first contributed to GHC at her Google summer of code project with a very ambitious goal of implementing the whole dependent Haskell. Also later she fixed several ghc bugs and worked on Koka’s Algebraic effects. Her future hope and advice is to use programming language concepts on real-word problems.
Oskar Wickström is interviewed by Wouter Swierstra and Alejandro Serrano, he will tell us a little bit about property-based testing (PBT) Haskell code but also applying these ideas to the testing of complete systems. He will say a little bit about interfacing Haskell to other languages and even with your web browser and what it’s like to learn Rust as a Haskell programmer.
Facundo Dominguez is interviewed by Niki Vazou and Joachim Breitner. Facundo Dominguez tells us the difference between STM and SMT. We also talk about Liquid Haskell and its relation to dependent types and the
QualifiedDo extension – which is one of the most highly discussed GHC proposals – and the general GHC proposals. And, finally, Facundo describes a technique to have Haskell peacefully coexist with other languages thanks to his work in the build system Bazel.
Ryan Trinkle is interviewed by Joachim Breitner and Niki Vazou. Ryan Trinkle co-founded Obsidian Systems, a company that uses not only Haskell but also even more exotic tech such as Functional Reactive Programming (FRP) and Nix. Ryan shed some light on the business side of Haskell and we get to hear that hiring for Haskell is actually excellent.
David Christiansen is interviewed by Alejandro Serrano and Wouter Swierstra. They talk about many functional programming things, from Idris to Racket and of course Haskell and David’s new role as the executive director of Haskell Foundation.
Gergő Érdi is interviewed by Wouter Swierstra and Andres Löh. Gergő has an interesting path into Haskell taking many twists and turns. This episode discusses about these twists and Gergő’s recent book on implementing retro computers using Haskell.
Simon Peyton Jones is interviewed by Andres Löh and Joachim Breitner. Simon is the creator of Haskell and in this episode he talks about his new position at Epic, the origins of Haskell and why “it feels right”, and the (extra)ordinary Haskell programmers.
Nadia Polikarpova is interviewed by Alejandro Serrano and Niki Vazou. Nadia is an assistant professor at UCSD, where she works on improving how we write programs. They talk about some of her projects, like Hoogle+ and Synquid, and how she approaches teaching about these topics.
Sebastian Graf is interviewed by Joachim Breitner and Alejandro Serrano. Sebastian is one of the most active contributors to GHC, and tells of this experience, from his very first commit to GHC to his current work on the pattern coverage checker and demand analyzer. He also gives us hints on how to reason about the strictness of Haskell programs.
Niki Vazou and Andres Löh are joined by guest Théophile Choutri (they/them), who also goes by Hécate. Théophile coordinates multiple projects and volunteer groups within the Haskell Foundation, notably the Haskell School project (intending to provide a free online open source library for teaching Haskell), and works on improving GHC core documentation and developing an alternative to Hackage. Together they discuss Théophile’s introduction to Haskell and their ongoing projects with the Foundation and the broader community, with a focus on the challenges facing Haskell non-experts and how they hope to tackle them.
José Calderón is interviewed by Niki Vazou and Wouter Swierstra . José has been working on functional programming at Galois and University of Maryland. He tells us about his research background in many different continents, his experience with teaching compilers, the relation between music and functional programming and the “Recursive Programming Techniques” book that in the 1970s captured the essence of functional programming.
Graham Hutton is interviewed by Wouter Swierstra and Andres Löh. Graham is known for his work on Haskell both in research and teaching Haskell, and in particular his Haskell book. Graham will tell us a little bit about how his book came about and give us advice for how to write a book ourselves, but also look back on his experience using Haskell and teaching Haskell in the last thirty years, and tell us a little bit about how bad the compile times were for the very first versions of GHC.
Chris Smith is interviewed by Joachim Breitner and Andres Löh. Chris is the author of the CodeWorld teaching tool and discusses why too much curry in the language can make error messages hard to digest and why a self respecting testing library certainly should be used to test itself.
Jasper Van der Jeugt is interviewed by Niki Vazou and Joachim Breitner. Jasper plays an important role in the Haskell community, helping with
haskell.org, the Google Summer of Code project, ZuriHac and the ICFP programming contest, so there is much to talk about.
Gabriella Gonzalez is interviewed by Joachim Breitner and Alejandro Serrano, and we talk about Dhall, Nix, and Haskell, learn why Gabriella’s packages are sometimes called after characters of computer games, and get to know her elevator pitch for educating Haskell
The interviewee now goes by Gabriella as their preferred name, but at the time was still using Gabriel.
The guest in our second episode is Lennart Augustsson. The hosts are Wouter Swierstra and Niki Vazou. We talk about Lennart’s long history with Haskell, about the various jobs he has had, all the compilers he has written, and about dependent types.
The guest of our first regular episode is Emily Pillmore, CTO of the Haskell Foundation. The hosts are Alejandro Serrano and Andres Löh. We talk about Emily’s path to Haskell, the role of the Haskell Foundation and the CTO within the Haskell Foundation, about current projects, the Haskell Community and about Emily’s work on Optics.
We are starting a new Haskell-focused podcast where we interview guests from the Haskell community. The hosts are Niki Vazou, Joachim Breitner, Andres Löh, Alejandro Serrano and Wouter Swierstra. In this teaser episode, we introduce ourselves.
The music used is "Blue Lambda" by Donya Quick.
Many thanks to Donya for giving us permission to use this track for our podcast.
We are very grateful to Alp Mestanogullari and Jose Calderon for their help with editing the episodes and to Krishna Padmasola, Ben Orchard, and Mihai Maruseac for their help with the transcription.