Functional Geekery Episode 11 – Simon Peyton Jones

In this episode I talk with Simon Peyton Jones. I ask him about his background in Functional Programming, the growing popularity of Haskell, things he would like to bring into Haskell further, and his work with Computing At School.

Our Guest, Simon Peyton Jones

Simon Peyton Jones


Computer Science at School
How Simon Peyton Jones got into Functional Programming
SK Combinators
Implementation of Functional Programming Languages (Amazon, online)
Creation of Haskell
Haskell as a Laboratory for Innovation
Interview on Software Engineering Radio
Core of Haskell as Lambda Calculus
System F
Growing Popularity of Haskell
Hackage and Cabal
Concurrency in Haskell
Haskell as a part of an Ideas Pipeline and Exemplar
“When the limestone of imperative programming is worn away the granite of functional programming will be revealed underneath”
Static Typing in Haskell vs Weaker Type Systems
Type Inference
Incomplete programs

  • Example 1: f x = sort _ ++ x
  • Example 2: f x = funny_lib_fn _ _ _

Things thinking about for future of Haskell
Refinement Types and Liquid Haskell
Larger Scale Modularity in Haskell and Software Components
Cloud Haskell
Refinements Examples

  • Example 1: f :: Int -> Int
  • Example 2: f :: (x:Int) -> {y:Int | y > x }
  • Example 3: g :: (x:Int -> {y:int | y>x}) -> …

Combination of Modularity at Package Level with Refinement Types as part of Component Contract
Bringing Computer Science as Subject Discipline to England National School Curriculum
What the curriculum looks like
Number of Programming Environments aimed at Children in School
Programming is Only Part of Computer Science
Computer Science Unplugged
How to Participate at the Local Level Even
Join Computing At School

A giant Thank You to David Belcher for the logo design.