Simon Peyton Jones, MA, MBCS, CEng, graduated from Trinity College Cambridge in 1980. Simon was a key contributor to the design of the now-standard functional language Haskell, and is the lead designer of the widely-used Glasgow Haskell Compiler (GHC). He has written two textbooks about the implementation of functional languages.
After two years in industry, he spent seven years as a lecturer at University College London, and nine years as a professor at Glasgow University before moving to Microsoft Research (Cambridge) in 1998.
His main research interest is in functional programming languages, their implementation, and their application. He has led a succession of research projects focused around the design and implementation of production-quality functional-language systems for both uniprocessors and parallel machines.
More generally, he is interested in language design, rich type systems, software component architectures, compiler technology, code generation, runtime systems, virtual machines, and garbage collection. He is particularly motivated by direct use of principled theory to practical language design and implementation -- that's one reason he loves functional programming so much.
Simon Peyton Jones, MA, MBCS, CEng, graduated from Trinity College Cambridge in 1980. Simon was a key contributor to the design of the now-standard functional language Haskell, and is the lead designer of the widely-used Glasgow Haskell Compiler (GHC). He has written two textbooks about the implementation of functional languages.
After two years in industry, he spent seven years as a lecturer at University College London, and nine years as a professor at Glasgow University before moving to Microsoft Research (Cambridge) in 1998.
His main research interest is in functional programming languages, their implementation, and their application. He has led a succession of research projects focused around the design and implementation of production-quality functional-language systems for both uniprocessors and parallel machines.
More generally, he is interested in language design, rich type systems, software component architectures, compiler technology, code generation, runtime systems, virtual machines, and garbage collection. He is particularly motivated by direct use of principled theory to practical language design and implementation -- that's one reason he loves functional programming so much.
Talks I've Given
-
Beyond Functional Programming: the Verse Programming Language
Featuring Simon Peyton Jones
We are honoured to welcome back Simon Peyton Jones to the Haskell eXchange with a brand new technical talk. Since the very first Haskell eXchange in 2012, we've been lucky to have Simon join us each year to share his unique perspective on our favourite programming language.
software-development haskell -
Beyond functional programming: the Verse programming language
Featuring Simon Peyton Jones
We are honoured to welcome back Simon Peyton Jones to the Haskell eXchange with a brand new technical talk. Since the very first Haskell eXchange in 2012, we've been lucky to have Simon join us each year to share his unique perspective on our favourite programming language.
software-development haskell -
Keynote — Provably correct, asymptotically efficient, higher-order reverse-mode automatic differentiation
Featuring Simon Peyton Jones
Automatic differentiation is all the rage these days, largely because it is a key enabler for machine learning. In this talk I’ll explain what AD is, and how we can do it for higher order programs, using a series of simple steps that take us a simple-and-obviously-correct version to a...
machine-learning automatic-differentiation haskell functional-programming ghc -
Hashing Modulo Alpha Equivalence
Featuring Simon Peyton Jones
In many applications, one wants to identify identical subtrees of a program syntax tree. This identification should ideally be robust to alpha-renaming of the program, but no existing technique has been shown to achieve this with good efficiency (better than O(n^2) in expression size). We present...
hashing haskell -
The Launch of the Haskell Foundation
Featuring Simon Peyton Jones
In this very special talk Simon Peyton Jones will announce the launch of the Haskell Foundation, an independent, non-profit organisation dedicated to broadening the adoption of Haskell, by supporting its ecosystem of tools, libraries, education, and research.
nonprofit-technology haskell -
Keynote: Revisiting Pattern Match Overlap Checks
Featuring Simon Peyton Jones
How hard can it be to spot missing or overlapping patterns in a Haskell function definition? Surely it’s the least we can expect from a decent compiler? But when you mix in GADTs, pattern guards, view patterns, data families, strict data constructors, and pattern synonyms, matters get...
pattern-matching refactored-implementation gadt ghc haskell -
2
Fireside chat: Martin Odersky & Simon Peyton Jones
Featuring Simon Peyton Jones and Martin Odersky
Fireside chat with Martin Odersky and Simon Peyton Jones hosted by Miles Sabin & Zainab Ali covering topics that matter across the two special communities. Includes Q&A for your burning questions too!
scala functional-programming haskell scalax -
Keynote: Linear Haskell: Practical Linearity in a Higher-Order Polymorphic Language
Featuring Simon Peyton Jones
Linear type systems are more often talked about than used. I have long thought that we should be able to use linearity to improve the expressiveness and efficiency of functional programming languages, especially Haskell. But I always got lost in a deep swamp of exclamation marks and upside down...
ghc functional-programming linear-type-systems keynote haskellx haskell -
Keynote: Compiling without Continuations
Featuring Simon Peyton Jones
GHC compiles Haskell via Core, a tiny intermediate language based closely on the lambda calculus. Almost all GHC’s optimisations happen in Core, but until recently there was an important kind of optimisation that Core really did not handle well. In this talk, you will learn what the problem was,...
haskell haskellx types monads compile compiler ghc -
A reflection on types - Simon Peyton Jones, Microsoft Research
Featuring Simon Peyton Jones
Static type systems are wonderful, but they have their limits, and then you reach for dynamic type and run-time type checks. Haskell has had dynamic types for ages, in the form of the Typeable class, but recent developments has made it feasible to support type-indexed type run-time type...
haskell -
Keynote from Simon Peyton Jones - Into the Core: Understanding GHC’s Intermediate Language
Featuring Simon Peyton Jones
GHC translates all of Haskell into a tiny intermediate language called Core, does a lot of optimisations on Core, and then generates executable code. In this talk I’ll take you on a journey into Core, with several goals. First, if you ever do performance-debugging of a Haskell program you may...
haskellx haskell functional-programming ghc haskell-ghc core-to-core haskell-core core -
Safe, Zero-Cost Coercions in Haskell
Featuring Simon Peyton Jones
Newtypes are the key to data abstraction in Haskell, and come with an crucial performance guarantee: it doesn’t cost anything to use a newtype.
haskell functional-programming -
LENSES: COMPOSITIONAL DATA ACCESS AND MANIPULATION.
Featuring Simon Peyton Jones
Haskell lets you write beautiful, modular code. Rather than waffle generally, I’ll use this talk to look at a particular example, Edward Kmett’s lovely lens library.
haskell scalax lenses jquery types functional-programming -
Lenses: compositional data access and manipulation.
Featuring Simon Peyton Jones
Haskell lets you write beautiful, modular code. Rather than waffle generally, I’ll use this talk to look at a particular example, Edward Kmett’s lovely lens library.
haskell lenses jquery haskellx -
Adventures with types
Featuring Simon Peyton Jones
Static type systems are the world’s most widely applied formal method, in daily use by millions of programmers. The trouble is that weak type systems give types a bad name; they get in your way and stop you from writing the programs you want to write. And that leads to the familiar but fruitless...
functional-programming haskell fpx static dynamic -
Front end language features
Featuring Simon Peyton Jones
In this talk I’ll reflect on the key features of the language and its community that has led to all this creative development. Despite the title Haskell may not in the end dominate the world, but there are lots of interesting developments afoot, especially in (a) types and (b) parallelism. I’ll...
haskell functional-programming -
Towards Haskell in the Cloud
Featuring Simon Peyton Jones
Simon Peyton-Jones gives a keynote talk for Scala Days on Towards Haskell in the Cloud
haskell cloud scala -
Managing parallelism: embrace diversity, but control side effects
Featuring Simon Peyton Jones
If you want to program a parallel computer, it obviously makes sense to start with a computational paradigm in which parallelism is the default (ie functional programming), rather than one in which computation is based on sequential flow of control (the imperative paradigm). And yet, and yet ......
functional-programming haskell transactional-memory