Presentation: "Haskell: functional programming on steroids"

Time: Friday 11:00 - 12:00

Location: Westminster Suite


Haskell is functional programming on steroids. All functions are by default pure, and have no side effects at all. Evaluation is "lazy", and performed only on demand. Side effects are supported, but in a carefully-controlled way that is tracked by the type system. The type system is unusually expressive (well beyond generics in OO languages). Parallelism is safe by default, and supported in a variety of forms (pure threads, transactional memory, and soon data parallelism).

All this makes you think about programming in a new way. Your programs can use new forms of modularity, and are often remarkably concise. They are much, much easier to test. You can make changes years later with great confidence that you are not breaking the code.

In this talk I'll give you a lightning introduction to Haskell (nothing too technical), focusing on the key benefits I mention above. More info:

Simon Peyton-Jones

 Simon  Peyton-Jones

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.

His home page is at