This week we talk to Simon Peyton Jones, a veteran language designer and researcher, and key figure in the development of Haskell. Haskell. Simon has made countless contributions to advancement of functional programming, and computer programming in general, and is currently working at Epic Games, working on the foundations of their new programming language, Verse.
We discuss how programming languages are made, focussing on a big design idea from both Haskell and Verse: building a large language from a small, tightly designed core. Then we move into Simon's current work exploring Functional Logic Programming, the big new idea that underpins Verse. It's an idea that blends the fundamentals FP with the core ideas of logic languages like Prolog in an entirely new way. Not even Simon knows exactly where the idea will lead, but it's a fascinating idea that could potentially bring constraint-solving and deduction right into the heart of modern software.
Additionally, Simon discusses his involvement in reshaping the way we teach computing in England. He's been working hard to give computing education the same importance as the teaching of mathematics and sciences - something we should all have a fundamental understanding of.
Simon's one of the smartest, nicest people in programming. Come as hear his brilliant brain at work. :-D
–
Verse: https://github.com/UnrealVerseGuru/VerseProgrammingLanguage
The Verse Language Reference: https://dev.epicgames.com/documentation/en-us/uefn/verse-language-reference
The Verse Calculus [pdf]: https://simon.peytonjones.org/assets/pdfs/verse-March23.pdf
https://en.wikipedia.org/wiki/Simon_Peyton_Jones
The LogicT monad: https://hackage.haskell.org/package/logict
Can programming be liberated from the von Neumann style?: https://dl.acm.org/doi/10.1145/359576.359579
CAS - Computing At School: https://www.computingatschool.org.uk/
Computer Science Teachers Association: https://csteachers.org/
Kris on Twitter: https://twitter.com/krisajenkins
Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/