Switch to speaker view

Or use left cursor

Switch to presentation view

Or use right cursor

You need to update your browser

Modern browsers have better performance and support the latest web technologies. Try either:

Sorry, Eventer doesn't work quite right on your device.

Right now, Eventer can be viewed on your desktop computer and any Apple mobile device with iOS 7 or later. We're hard at work on supporting other platforms.

Ooops, there doesn't seem to be any videos.

00:00:00 / 00:00:00

The Future is Parallel, and the Future of Parallel is Declarative

  • Simon Peyton Jones
  • 00:56:00

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... functional programmers have been singing this tune since the 1980s, but do not yet rule the world. In this talk I’ll say why I think parallelism is too complex a beast to be slain at one blow, and how we are going to be driven, willy-nilly, towards a world in which side effects are much more tightly controlled than now. I’ll give a whirlwind tour of a whole range of ways of writing parallel program in a functional paradigm (implicit parallelism, transactional memory, data parallelism, DSLs for GPUs, distributed processes, etc, etc), illustrating with examples from the rapidly moving Haskell community, and identifying some of the challenges we need to tackle.

  • Simon Peyton Jones, MA, MBCS, CEng, graduated from Trinity College Cambridge in 1980. 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. He 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. 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.

Having trouble viewing the talks? Please let us know.

Or, help us improve by telling us what you think.