About
I’m a researcher at Microsoft Research in Cambridge, England. I started here in Sept 1998. I’m also an Honorary Professor of the Computing Science Department at Glasgow University, where I was a professor during 1990-1998.
I am married to Dorothy, a priest in the Church of England. We have six children.
I’m interested in the design, implementation, and application of lazy functional languages. In practical terms, that means I spend a most of my time on the design and implementation of the language Haskell. In particular, much of my work is focused around the Glasgow Haskell Compiler, and its ramifications.
I am chair of Computing at School, the group at the epicentre of the reform of the national curriculum for Computing in England. Computer science is now a foundational subject, alongside maths and natural science, that every child learns from primary school onwards (background here).
I am a Fellow of the Royal Society (2016), a Distinguished Fellow of the BCS (2017), and a Fellow of the ACM (2004).
I am honoured to have received an Honorary DSc from the University of Glasgow (2013).
Research skills
- How to write a great research paper
- How to give a great research talk
- How to write a great grant proposal
Useful information and links
- Background articles: Muffy Calder’s oration at my 2013 honorary DSc ceremony; a 2014 Microsoft blog post about CAS and computing education.
- The Computing at School Working Group
- My Win32 cheat sheet
- Here are translations of my page into Belarussian (thanks to Vicky Rotarova), and Polish (Abdul Sattar)
- My GPG key fingerprint is: CABA 2C32 0D13 B715 8611 0390 6B2B 1815 5F25 C538
Haskell stuff
- The International Conference on Functional Programming
- The Revised Haskell 98 Report,
- The main Haskell home page
- The Glasgow Haskell Compiler
- Johan Tibell’s State of Haskell 2010 questionnaire results
- John Hughes’s links to tutorials on functional programming
- A History of Haskell: being lazy with class.
- Tackling the awkward squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell.
- Type classes: exploring the design space
- Wearing the hair shirt: a retrospective on Haskell. Slides of my invited talk at POPL’03
- A taste of Haskell. Video and slides from my tutorial on Haskell at the O’Reilly Open Source Convention in Portland, 2007
- The main Haskell mailing list
Social networks
I use LinkedIn for professional networking, but I restrict my connections to people who I know personally, or with whom I have had some meaningful two-way professional interaction; that is, not simply people with whom I share a professional interest.
I use Facebook for non-work networking, but only for people who my family knows too.
I do have a Twitter account, for some reason, but I have yet to find something significant enough to say that it’s worth tweeting.
In all three cases my actual use is minimal, so don’t hold your breath.
Publications
2017
Using Destination-Passing Style to Compile a Functional Language into Efficient Low-Level Code
Amir Shaikhha, Andrew Fitzgibbon, Simon Peyton Jones, Dimitrios Vytiniotis, In submission, February 27, 2017, View abstract, Download PDF2016
Modular, higher-order cardinality analysis in theory and practice
Ilya Sergey, Dimitrios Vytiniotis, Joachim Breitner, Simon Peyton Jones, December 1, 2016, View abstract, Download PDFCompiling without continuations
Luke Maurer, Zena Ariola, Paul Downen, Simon Peyton Jones, In submission, November 17, 2016, View abstract, Download PDFLevity polymorphism
Richard Eisenberg, Simon Peyton Jones, In submission, November 17, 2016, View abstract, Download PDFTrees that grow
Shayan Najd, Simon Peyton Jones, To appear in JUCS, November 17, 2016, View abstract, Download PDFDesugaring Haskell’s do-notation Into Applicative Operations
Simon Marlow, Simon Peyton Jones, Edward Kmett, Andrey Mokhov, in ICFP 2016, September 22, 2016, View abstract, Download PDFNon-recursive Make Considered Harmful
Andrey Mokhov, Neil Mitchell, Simon Peyton Jones, Simon Marlow, in Haskell Symposium 2016, September 22, 2016, View abstract, Download PDFPattern Synonyms
Matthew Pickering, Gerg˝o Érdi, Simon Peyton Jones, Richard A. Eisenberg, in Haskell’16, September 22-23, 2016, September 22, 2016, View abstract, Download PDFSequent calculus as a compiler intermediate language
Paul Downen, Luke Maurer, Zena Ariola, Simon Peyton Jones, in International Conference on Functional Programming (ICFP'16), ACM, September 18, 2016, View abstract, Download PDFComposable Scheduler Activations for Haskell
KC Sivaramakrishnan, Tim Harris, Simon Marlow, Simon Peyton Jones, in Journal of Functional Programming, June 1, 2016, View abstract, Download PDFTyped reflection in Haskell
Simon Peyton Jones, Stephanie Weirich, Richard A. Eisenberg, Dimitrios Vytiniotis, in Proc Philip Wadler's 60th birthday Festschrift, Edinburgh, April 2016, April 1, 2016, View abstract, Download PDFBackpack to work: towards practical mixin linking for Haskell
Simon Peyton Jones, Edward Yang, Scott Kilpatrick, Derek Dreyer, in In submission, March 1, 2016, View abstract, Download PDF2015
GADTs meet their match: pattern-matching warnings that account for GADTs, guards, and laziness
Georgios Karachalias, Dimitrios Vytiniotis, Simon Peyton Jones, in ACM International Conference on Functional Programming 2015 (ICFP'15), August 31, 2015, View abstract, Download PDFInjective type families for Haskell
Jan Stolarek, Richard Eisenberg, Simon Peyton Jones, in ACM Haskell Symposium 2015, ACM, August 27, 2015, View abstract, Download PDFDiagnosing type errors with class
Danfeng Zhang, Andrew C Myers, Dimitrios Vytiniotis, Simon Peyton Jones, ACN, June 13, 2015, View abstract, Download PDF2014
Refinement Types for Haskell
Niki Vazou, Eric L. Seidel, Ranjit Jhala, Dimitrios Vytiniotis, Simon Peyton Jones, in Proceedings of the 19th ACM SIGPLAN International Conference on Functional Programming, ACM, September 1, 2014, View abstract, Download PDF, View external linkSafe coercions
Joachin Breitner, Richard Eisenberg, Simon Peyton Jones, Stephanie Weirich, in ICFP 2014, June 10, 2014, View abstract, Download PDFTheory and practice of demand analysis in Haskell
Ilya Sergey, Simon Peyton Jones, Dimitrios Vytiniotis, Unpublished draft, June 1, 2014, View abstract, Download PDFBackpack: retrofitting Haskell with interfaces
Scott Kilpatrick, Derek Dreyer, Simon Peyton Jones, Simon Marlow, in POPL ’14, ACM, January 22, 2014, View abstract, Download PDF, View external linkModular, Higher-order Cardinality Analysis in Theory and Practice
Ilya Sergey, Dimitrios Vytiniotis, Simon Peyton Jones, in POPL 2014, ACM, January 20, 2014, View abstract, Download PDF, View external linkClosed Type Families with Overlapping Equations
Richard A. Eisenberg, Dimitrios Vytiniotis, Simon Peyton Jones, Stephanie Weirich, in Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, ACM, January 1, 2014, View abstract, Download PDF, View external link2013
Exploiting vector instructions with generalized stream fusion
Simon Peyton Jones, Geoff Mainland, Simon Marlow, Roman Leshchinskiy, in ACM SIGPLAN International Conference on Functional Programming (ICFP ’13), September 25, 2013, View abstract, Download PDF, View external linkEvidence normalization in System FC
Dimitrios Vytiniotis, Simon Peyton Jones, in 24th International Conference on Rewriting Techniques and Applications (RTA'13), LIPICS, Schloss Dagstuhl, June 1, 2013, View abstract, Download PDFCall-by-need supercompilation
Max Bolingbroke, University of Cambridge, May 1, 2013, View abstract, Download PDFComputing at school in the UK: from guerrilla to gorilla
Simon Peyton Jones, Simon Humphreys, Bill Mitchell, in Submitted to CACM, May 1, 2013, View abstract, Download PDFBringing Computer Science Back Into Schools: Lessons from the UK
Michael Kolling, Tom Crick, Simon Peyton Jones, Simon Humphreys, Sue Sentance, in SIGCSE’13, ACM, March 9, 2013, View abstract, Download PDFHALO: Haskell to Logic Through Denotational Semantics
Dimitrios Vytiniotis, Simon Peyton Jones, Koen Claessen, Dan Rosén, in Proceedings of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, ACM, January 1, 2013, View abstract, Download PDF, View external link2012
Guiding parallel array fusion with index types
Ben Lippmeier, Manuel Chakravarty, Gabriele Keller, Simon Peyton Jones, in Haskell Symposium, Copenhagen, ACM, September 13, 2012, View abstract, Download PDFSafe Haskell
Simon Marlow, David Terei, David Mazieres, Simon Peyton Jones, in Haskell '12: Proceedings of the Fifth ACM SIGPLAN Symposium on Haskell, ACM, September 13, 2012, View abstract, Download PDF, View external linkVectorisation avoidance
Gabriele Keller, Manuel Chakravarty, Roman Leshchinskiy, Ben Lippmeier, Simon Peyton Jones, in Haskell Symposium, ACM, September 13, 2012, View abstract, Download PDFWork Efficient Higher-Order Vectorisation
Ben Lippmeier, Manuel Chakravarty, Gabriele Keller, Roman Leshchinskiy, Simon Peyton Jones, in ICFP’12, ACM, September 12, 2012, View abstract, Download PDFEquality proofs and deferred type errors: a compiler pearl
Dimitrios Vytiniotis, Simon Peyton Jones, Jose Pedro Magalhaes, in Proceedings of the 17th ACM SIGPLAN international conference on Functional programming, ACM, January 1, 2012, View abstract, Download PDFGiving Haskell a Promotion
Brent Yorgey, Stephanie Weirich, Julien Cretin, Simon Peyton Jones, Dimitrios Vytiniotis, Jose Pedro Magalhaes, in Proceedings of TLDI'12, ACM, January 1, 2012, View abstract, Download PDFThe Glasgow Haskell Compiler
Simon Marlow, Simon Peyton Jones, in The Architecture of Open Source Applications, Volume 2, Lulu, January 1, 2012, View abstract, Download PDF, View external link2011
Termination Combinators Forever
Maximilian Bolingbroke, Simon Peyton Jones, Dimitrios Vytiniotis, in ACM Haskell Symposium, Tokyo, ACM, September 22, 2011, View abstract, Download PDFOutsideIn(X): Modular type inference with local assumptions
Dimitrios Vytiniotis, Simon Peyton Jones, Tom Schrijvers, Martin Sulzmann, in Journal of Functional Programming, Cambridge University Press, September 1, 2011, View abstract, Download PDFTowards Haskell in the cloud
Jeff Epstein, Andrew Black, Simon Peyton Jones, in Haskell Symposium, September 1, 2011, View abstract, Download PDFMulticore Garbage Collection with Local Heaps
Simon Marlow, Simon Peyton Jones, in ISMM '11: Proceedings of the 10th International Symposium on Memory Management, ACM, June 1, 2011, View abstract, Download PDFHaskell and transactional memory
Simon Peyton Jones, March 24, 2011, View abstract, Download PDFPractical aspects of evidence-based compilation in System FC
Dimitrios Vytiniotis, Simon Peyton Jones, March 24, 2011, View abstract, Download PDFA Monad for Deterministic Parallelism
Simon Marlow, Ryan Newton, Simon Peyton Jones, in Haskell '11: Proceedings of the Fourth ACM SIGPLAN Symposium on Haskell, ACM, January 1, 2011, View abstract, Download PDF, View external linkEfficient Parallel Stencil Convolution in Haskell
Simon Peyton Jones, Ben Lippmeier, Gabriele Keller, in Submitted to ICFP 2011, January 1, 2011, View abstract, Download PDFGenerative type abstraction and type-level computation
Stephanie Weirich, Dimitrios Vytiniotis, Simon Peyton Jones, Steve Zdancewic, in Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, ACM SIGPLAN, January 1, 2011, View abstract, Download PDFImproving supercompilation: tag-bags, rollback, speculation, normalisation, and generalisation
Max Bolingbroke, Simon Peyton Jones, in ICFP, January 1, 2011, View abstract, Download PDF2010
Hoopl: A Modular, Reusable Library for Dataflow Analysis and Transformation
Norman Ramsey, John Dias, Simon Peyton Jones, in Haskell Symposium 2010, January 1, 2010, View abstract, Download PDFLet Should Not Be Generalised
Dimitrios Vytiniotis, Simon Peyton Jones, Tom Schrijvers, in Proceedings of the 5th ACM SIGPLAN Workshop on Types in Language Design and Implementation, Association for Computing Machinery, Inc., January 1, 2010, View abstract, Download PDFRegular, shape-polymorphic, parallel arrays in Haskell
Gabriele Keller, Manuel Chakravarty, Roman Leshchinskiy, Simon Peyton Jones, in To appear at ICFP’10, January 1, 2010, View abstract, Download PDFSupercompilation by evaluation
Max Bolingbroke, Simon Peyton Jones, in Haskell Symposium 2010, January 1, 2010, View abstract, Download PDF2009
Runtime Support for Multicore Haskell
Simon Marlow, Simon Peyton Jones, Satnam Singh, in Submitted to the International on Functional Programming (ICFP) 2009, ICFP 2009, Association for Computing Machinery, Inc., September 5, 2009, View abstract, Download PDFComplete and Decidable Type Inference for GADTs
Tom Schrijvers, Simon Peyton Jones, Martin Sulzmann, Dimitrios Vytiniotis, in Proceedings of the 14th ACM SIGPLAN International Conference on Functional Programming, Association for Computing Machinery, Inc., September 1, 2009, View abstract, Download PDFClasses, Jim, but not as we know them (2009)
Simon Peyton Jones, in This is my invited talk for ECOOP 2009, July 1, 2009, View abstract, Download PDFTypes are calling conventions
Simon Peyton Jones, Max Bolingbroke, in ACM Haskell Symposium, ACM, May 14, 2009, View abstract, Download PDFA Tutorial on Parallel and Concurrent Programming in Haskell
Satnam Singh, Simon Peyton Jones, in Advanced Functional Programming Summer School 2008, Springer Verlag, May 1, 2009, View abstract, Download PDFFinding the needle: stack tracing for GHC
Tristan Allwood, Simon Peyton Jones, Susan Eisenbach, in ACM Symposium on Haskell, ACM, May 1, 2009, View abstract, Download PDFFun with type functions
Oleg Kiselyov, Simon Peyton Jones, Chung-chieh Shan, in Presented at Tony Hoare's 75th birthday celebration, Cambridge, 17 April 2009., April 19, 2009, View abstract, Download PDFHaskell and Erlang: growing up together (2009)
Simon Peyton Jones, in My invited talk from the Erlang Factory meeting, in June 2009, January 1, 2009, View abstract, Download PDF2008
Harnessing the multicores: Nested Data Parallelism in Haskell
Simon Peyton Jones, Roman Leshchinskiy, Gabriele Keller, Manuel MT Chakravarty, in Foundations of Software Technology and Theoretical Computer Science (FSTTCS'08), December 1, 2008, View abstract, Download PDFFPH: First-class polymorphism for Haskell
Dimitrios Vytiniotis, Simon Peyton Jones, Stephanie Weirich, in Proceedings of the 13th ACM SIGPLAN International Conference on Functional Programming, Association for Computing Machinery, Inc., September 1, 2008, View abstract, Download PDFStatic Contract Checking for Haskell
Dana Xu, Simon Peyton Jones, Koen Claessen, in POPL'09, ACM, August 1, 2008, View abstract, Download PDFScrap your type applications
Barry Jay, Simon Peyton Jones, in Mathematics of Program Construction (MPC'08), July 1, 2008, View abstract, Download PDFParallel Generational-Copying Garbage Collection with a Block-Structured Heap
Simon Marlow, Tim Harris, Roshan P. James, Simon Peyton Jones, in ISMM '08: Proceedings of the 7th international symposium on Memory management, ACM, June 7, 2008, View abstract, Download PDF, View external linkType Checking with Open Type Functions
Tom Schrijvers, Simon Peyton Jones, Manuel Chakravarty, Martin Sulzmann, in ICFP 2008, April 4, 2008, View abstract, Download PDFPartial vectorisation of Haskell programs
Manuel MT Chakravarty, Roman Leshchinskiy, Simon Peyton Jones, Gabriele Keller, in Proc ACM Workshop on Declarative Aspects of Multicore Programming, ACM Press, January 1, 2008, View abstract, Download PDF2007
Faster laziness using dynamic pointer tagging
Simon Marlow, Alexey Rodriguez Yakushev, Simon Peyton Jones, in ICFP '07: Proceedings of the ACM SIGPLAN international conference on Functional programming, ACM Press, October 1, 2007, View abstract, Download PDF, View external linkLightweight concurrency primitives for GHC
Peng Li, Andrew Tolmach, Simon Marlow, Simon Peyton Jones, in Haskell Workshop 2007, September 30, 2007, View abstract, Download PDFComprehensive comprehensions: comprehensions with “order by” and “group by”
Simon Peyton Jones, Philip Wadler, in Haskell Workshop 2007, September 1, 2007, View abstract, Download PDFA History of Haskell: being lazy with class
Paul Hudak , John Hughes , Simon Peyton Jones, Philip Wadler , in The Third ACM SIGPLAN History of Programming Languages Conference (HOPL-III), June 9, 2007, View abstract, Download PDFSystem F with type equality coercions
Martin Sulzmann, Manuel Chakravarty, Simon Peyton Jones, Kevin Donnelly, in ACM SIGPLAN International Workshop on Types in Language Design and Implementation (TLDI'07), ACM, January 16, 2007, View abstract, Download PDFBeautiful concurrency
Simon Peyton Jones, in Beautiful code, O'Reilly, January 1, 2007, View abstract, Download PDFCall-pattern specialisation for Haskell programs
Simon Peyton Jones, in Submitted to ICFP 2007, January 1, 2007, View abstract, Download PDFData Parallel Haskell: a status report
Manuel Chakravarty, Roman Leshchinskiy, Simon Peyton Jones, Gabriele Keller, Simon Marlow, in ACM Sigplan Workshop on Declarative Aspects of Multicore Programming, January 1, 2007, View abstract, Download PDFTowards open type functions for Haskell
Tom Schrijvers, Martin Sulzmann, Simon Peyton Jones, Manuel Chakravarty, in Presented at the Implementing Functional Languages workshop, Sept 2007 (IFL07), but not part of its post-refereed proceedings., January 1, 2007, View abstract, Download PDF2006
Asynchronous exceptions in Haskell
Simon Marlow, Simon Peyton Jones, Andrew Moran, John Reppy, in ACM Conference on Programming Languages Design and Implementation (PLDI'01), ACM Press, December 12, 2006, View abstract, Download PDFDemand Analysis
Simon Peyton Jones, Peter Sestoft, John Hughes, July 26, 2006, View abstract, Download PDFTransactional memory with data invariants
Tim Harris, Simon Peyton Jones, in First ACM SIGPLAN Workshop on Languages, Compilers, and Hardware Support for Transactional Computing (TRANSACT'06), June 11, 2006, View abstract, Download PDFLock Free Data Structures using STMs in Haskell
Tim Harris, Simon Marlow, Simon Peyton Jones, Satnam Singh, in FLOPS '06: Proceedings of the Eighth International Symposium on Functional and Logic Programming, to appear, April 1, 2006, View abstract, Download PDFSimple unification-based type inference for GADTs
Dimitrios Vytiniotis, Stephanie Weirich, Simon Peyton Jones, Geoffrey Washburn, in ACM SIGPLAN International Conference on Functional Programming (ICFP'06), ACM Press, April 1, 2006, View abstract, Download PDFBoxy type inference for higher-rank types and impredicativity
Dimitrios Vytiniotis, Stephanie Weirich, Simon Peyton Jones, in ICFP 2006, January 1, 2006, View abstract, Download PDFHaskell Is Not Not ML
Ben Rudiak-Gould, Alan Mycroft, Simon Peyton Jones, in European Symposium on Programming, ESOP, January 1, 2006, View abstract, Download PDFUnderstanding functional dependencies via constraint handling rules
Martin Sulzmann, Gregory Duck, Simon Peyton Jones, Peter Stuckey, in To appear in the Journal of Functional Programming, January 1, 2006, View abstract, Download PDF2005
Scrap your boilerplate with class: extensible generic functions
Ralf Laemmel, Simon Peyton Jones, in ACM SIGPLAN International Conference on Functional Programming (ICFP'05), September 26, 2005, View abstract, Download PDFHaskell on a Shared-Memory Multiprocessor
Tim Harris, Simon Marlow, Simon Peyton Jones, in Haskell '05: Proceedings of the 2005 ACM SIGPLAN workshop on Haskell, September 1, 2005, View abstract, Download PDFA Monadic Framework for Delimited Continuations
Kent Dybvig, Simon Peyton Jones, Amr Sabry, January 1, 2005, View abstract, Download PDFAssociated Type Synonyms
Manuel Chakravarty, Gabriele Keller, Simon Peyton Jones, in ACM SIGPLAN International Conference on Functional Programming (ICFP'05), January 1, 2005, View abstract, Download PDFAssociated types with class
Manuel Chakravarty, Gabrielle Keller, Simon Peyton Jones, Simon Marlow, in POPL '05: Proceedings of the 32nd ACM SIGPLAN-SIGACT sysposium on Principles of programming languages, ACM Press, January 1, 2005, View abstract, View external linkComposable memory transactions
Tim Harris, Simon Marlow, Simon Peyton Jones, Maurice Herlihy, in PPoPP '05: Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming, ACM Press, January 1, 2005, View abstract, Download PDFPractical type inference for arbitrary-rank types
Simon Peyton Jones, Dimitrios Vytiniotis, Stephanie Weirich, Mark Shields, in Journal of Functional Programming, January 1, 2005, View abstract, Download PDF2004
Exploring the Barrier to Entry: Incremental Generational Garbage Collection for Haskell
Simon Peyton Jones, Simon Marlow, Andy Cheadle, Tony Field, in International Symposium on Memory Management, ACM, October 1, 2004, View abstract, Download PDF, View external linkExtending the Haskell Foreign Function Interface with Concurrency
Simon Marlow, Simon Peyton Jones, in Proceedings of the ACM SIGPLAN workshop on Haskell, September 1, 2004, View abstract, Download PDF, View external linkHow to make a fast curry: push/enter vs eval/apply
Simon Peyton Jones, in International Conference on Functional Programming, September 1, 2004, View abstract, Download PDFScrap more boilerplate: reflection, zips, and generalised casts
Ralf Lämmel, Simon Peyton Jones, in ACM SIGPLAN International Conference on Functional Programming (ICFP'04), ACM, September 1, 2004, View abstract, Download PDFWobbly types: type inference for generalised algebraic data types
Simon Peyton Jones, Geoffrey Washburn, Stephanie Weirich, July 1, 2004, View abstract, Download PDFChampagne Prototyping: A Research Technique for Early Evaluation of Complex End-User Programming Systems
Alan Blackwell, Margaret Burnett, Simon Peyton Jones, March 1, 2004, View abstract, Download PDFConstructed Product Result Analysis for Haskell
Clem Baker-Finch, Kevin Glynn, Simon Peyton Jones, March 1, 2004, View abstract, Download PDFSound and Decidable Type Inference for Functional Dependencies
Gregory Duck, Simon Peyton Jones, Martin Sulzmann, Peter Stuckey, in European Sumposium on Programming (ESPO'04), Springer, January 1, 2004, View abstract, Download PDF2003
Optimistic Evaluation: a fast evaluation strategy for non-strict programs
Robert Ennals , Simon Peyton Jones, in ACM International Conference on Functional Programming (ICFP'03), August 1, 2003, View abstract, Download PDFA User-Centred Approach to Functions in Excel
Simon Peyton Jones, Margaret Burnett, Alan Blackwell, in International Conference on Functional Programming (ICFP’03), June 30, 2003, View abstract, Download PDFImproving the world’s most popular functional language: user-defined functions in Excel
Simon Peyton Jones, Margaret Burnett, Alan Blackwell, in International Conference on Functional Programming (ICFP’03), June 30, 2003, View abstract, Download PDFScrap your boilerplate: a practical approach to generic programming
Ralf Lämmel, Simon Peyton Jones, in ACM SIGPLAN International Workshop on Types in Language Design and Implementation (TLDI'03), ACM Press, January 1, 2003, View abstract, Download PDFWearing the hair shirt: a retrospective on Haskell (2003)
Simon Peyton Jones, in invited talk at POPL 2003, January 1, 2003, View abstract, Download PDF2002
Template meta-programming for Haskell
Tim Sheard, Simon Peyton Jones, in Proceedings of the 2002 Haskell Workshop, Pittsburgh, October 1, 2002, View abstract, Download PDFSecrets of the Glasgow Haskell Compiler inliner
Simon Peyton Jones, Simon Marlow, in Journal of Functional Programming, July 1, 2002, View abstract, Download PDF, View external linkFirst class modules for Haskell
Mark Shields, Simon Peyton Jones, in 9th International Conference on Foundations of Object-Oriented Languages (FOOL 9), Portland, Oregon, January 1, 2002, View abstract, Download PDFLexically scoped type variables
Simon Peyton Jones, Mark Shields, January 1, 2002, View abstract, Download PDF2001
Object-Oriented Style Overloading for Haskell
Mark Shields, Simon Peyton Jones, in Workshop on Multi-Language Infrastructure and Interoperability (BABEL'01), September 1, 2001, View abstract, Download PDFPlaying by the rules: rewriting as a practical optimisation technique in GHC
Simon Peyton Jones, Andrew Tolmach, Tony Hoare, in 2001 Haskell Workshop, September 1, 2001, View abstract, Download PDFFeatherweight concurrency in a portable assembly language
Simon Peyton Jones, Norman Ramsey, January 1, 2001, View abstract, Download PDFTackling the awkward squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell
Simon Peyton Jones, IOS Press, January 1, 2001, View abstract, Download PDF2000
Simple Usage Polymorphism
Keith Wansbrough, Simon Peyton Jones, in 3rd ACM SIGPLAN Workshop on Types in Compilation, September 21, 2000, View abstract, Download PDFPattern Guards and Transformational Patterns
Martin Erwig, Simon Peyton Jones, in Haskell Workshop 2000, September 6, 2000, View abstract, Download PDFComposing contracts: an adventure in financial engineering
J-M Eber, J Seward, Simon Peyton Jones, in ACM SIGPLAN International Conference on Functional Programming (ICFP'00), ACM Press, September 1, 2000, View abstract, Download PDFDerivable type classes
Ralf Hinze, Simon Peyton Jones, in Proceedings of the 2000 Haskell Workshop, Montreal, September 1, 2000, View abstract, Download PDFPorting the Clean Object I/O library to Haskell
Peter Achten, Simon Peyton Jones, in Proceedings of the 12th International workshop on the Implementation of Functional Languages, Aachen (IFL'00), selected papers, Springer, September 1, 2000, View abstract, Download PDFA Single Intermediate Language That Supports Multiple Implementations of Exceptions
Norman Ramsey, Simon Peyton Jones, in ACM SIGPLAN '00 Conference on Programming Language Design and Implementation (PLDI), January 1, 2000, View abstract, Download PDFNon-stop Haskell
Andy Cheadle, Tony Field, Simon Marlow, Simon Peyton Jones, Lyndon While, in ICFP '00: Proceedings of the fifth ACM SIGPLAN international conference on Functional programming, ACM Press, January 1, 2000, View abstract, Download PDF, View external linkThe Multi-Architecture Performance of the Parallel Functional Language GPH
P.W. Trinder, H-W. Loidl, E. Barry, K. Hammond, U. Klusik, Simon Peyton Jones, in Euro-Par 2000 — Parallel Processing, Springer-Verlag, January 1, 2000, View abstract, Download PDF1999
Engineering Parallel Symbolic Programs in GpH
Simon Peyton Jones, Hans-Wolfgang Loidl, Philip W. Trinder, Kevin Hammond, Sahalu B. Junaidu, Richard G. Morgan, in Concurrency - Practice and Experience, October 1, 1999, View abstract, Download PDFCalling Hell from Heaven and Heaven from Hell
Simon Peyton Jones, Erik Meijer, Daan Leijen, Sigbjörn Finne, in The International Conference on Functional Programming (ICFP'99), Paris, France, ACM Press, September 1, 1999, View abstract, Download PDFStretching the storage manager: weak pointers and stable names in Haskell
Simon Peyton Jones, Simon Marlow, in Proceedings of the 11th International Workshop on the Implementation of Functional Languages, Springer-Verlag, September 1, 1999, View abstract, Download PDFA Semantics for Imprecise Exceptions
Simon Peyton Jones, Tony Hoare, Simon Marlow, in Proceedings of the ACM SIGPLAN '99 Conference on Programming Language Design and Implementation, Association for Computing Machinery, Inc., May 1, 1999, View abstract, Download PDF, View external linkReport on the Programming Language Haskell 98
SL Peyton Jones, RJM Hughes, L Augustsson, D Barton, B Boutel, W Burton, J Fasel, K Hammond, R Hinze, P Hudak, T Johnsson, MP Jones, J Launchbury, E Meijer, J Peterson, A Reid, C Runciman, PL Wadler, Richard Hughes, Simon Peyton Jones, February 1, 1999, View abstractOnce Upon a Polymorphic Type
K Wansbrough, Simon Peyton Jones, in 26th ACM Symposium on Principles of Programming Languages (POPL'99), ACM Press, January 20, 1999, View abstract, Download PDFAspect-oriented compilers
Eric van Wyk, Oege de Moor, Simon Peyton Jones, in GCSE'99 - Generative and Component-Based Software Engineering., January 1, 1999, View abstract, Download PDFC: a portable assembly language that supports garbage collection
Simon Peyton Jones, Norman Ramsey, Fermin Reig, in International Conference on Principles and Practice of Declarative Programming, January 1, 1999, View abstract, Download PDFImprecise exceptions, co-inductively
Andy Moran, Soeren Lassen, Simon Peyton Jones, in Higher Order Operational Techniques in Semantics: Third International Workshop, Elsevier, January 1, 1999, View abstract, Download PDFInternational Workshop on Implementing Functional Languages (IFL’99)
S Marlow, SL Peyton Jones, C Elliott, Simon Marlow, Simon Peyton Jones, springer, January 1, 1999, View abstractLightweight Extensible Records for Haskell
Mark P Jones, Simon Peyton Jones, in Proceedings of the 1999 Haskell Workshop, January 1, 1999, View abstract, Download PDF1998
A design for warm fusion
Laszlo Nemeth, Simon Peyton Jones, in 10th International Worskhop on the Implementation of Functional Languages (IFL'98),, September 1, 1998, View abstract, Download PDFGPH : An Architecture Independent Functional Language
E. Barry Jr, Hans-Wolfgang Loidl, Kevin Hammond, M. Kei Davis, Philip W. Trinder, Sahalu B. Junaidu, Simon Peyton Jones, July 18, 1998, View abstract, Download PDFScripting COM components in Haskell
Simon Peyton Jones, Erik Meijer, Daan Leijen, in Fifth International Conference on Software Reuse, IEEE Computer Society Press, June 1, 1998, View abstract, Download PDFThe C – – Language Reference Manual
Dino Oliva, Pablo Nogueira Iglesias, Simon Peyton Jones, Thomas Nordin, April 23, 1998, View abstract, Download PDFH/Direct: A Binary Foreign Language Interface for Haskell
Sigbjörn Finne, Daan Leijen, Erik Meijer, Simon Peyton Jones, in International Conference on Functional Programming 1998 (ICFP'98), ACM SIGPLAN, April 16, 1998, View abstract, Download PDFAlgorithm + Strategy = Parallelism
PW Trinder, K Hammond, H-W Loidl, Simon Peyton Jones, in Journal of Functional Programming, Cambridge University Press, January 1, 1998, View abstract, Download PDFBridging the Gulf: A Common Intermediate Language for ML and Haskell
Andrew Tolmach, John Launchbury, Mark Shields, Simon Peyton Jones, in ACM Symposium on Principles of Programming Languages (POPL'98), Association for Computing Machinery, Inc., January 1, 1998, View abstract, Download PDFDynamic Typing By Staged Type Inference
Mark Shields, Tim Sheard, Simon Peyton Jones, in 25th ACM Symposium on Principles of Programming Languages (POPL'98), ACM Press, January 1, 1998, View abstract, Download PDFMachine-independent support for garbage collection, debugging, exception handling, and concurrency
Simon Peyton Jones, Norman Ramsey, University of Virginia, January 1, 1998, View abstract, Download PDFThe New GHC/Hugs Runtime System
Simon Marlow, Simon Peyton Jones, January 1, 1998, View abstract, Download PDF1997
PARallel Database Engine (Parade) Final Report
Simon Peyton Jones, Kevin Hammond, Phil Trinder, December 19, 1997, View abstract, Download PDFA transformation-based optimiser for Haskell
Simon Peyton Jones, Andre Santos, in Science of Computer Programming, Elsevier, October 13, 1997, View abstract, Download PDFHenk: a typed intermediate language
E Meijer, Simon Peyton Jones, in Types in Compilation, May 20, 1997, View abstract, Download PDFGreen Card: a foreign-language interface for Haskell
T Nordin, Alastair Reid, Simon Peyton Jones, in Haskell workshop, February 14, 1997, View abstract, Download PDFDeclarative Systems Architecture: A Quantitative Approach (AQUA)
Simon Peyton Jones, January 24, 1997, View abstract, Download PDFC–: A Portable Assembly Language
Dino Oliva, T. Nordin, Simon Peyton Jones, in Proceedings of the 1997 Workshop on Implementing Functional Languages, Springer Verlag, January 1, 1997, View abstract, Download PDFFormally-Based Profiling for Higher-Order Functional Languages
Patrick M. Sansom, Simon Peyton Jones, Association for Computing Machinery, Inc., January 1, 1997, View abstract, View external linkType classes: an exploration of the design space
Simon Peyton Jones, Mark Jones, Erik Meijer, in Haskell workshop, January 1, 1997, View abstract, Download PDF1996
An Exploration of Modular Programs
Jan Nicklisch, Simon Peyton Jones, in The Glasgow Workshop on Functional Programming, 1996, October 11, 1996, View abstract, Download PDFBulk types with class
Simon Peyton Jones, in Electronic proceedings of the 1996 Glasgow Functional Programming Workshop, September 1, 1996, View abstract, Download PDF, View external linkPictures: A Simple Structured Graphics Model
SO Finne, Simon Peyton Jones, in Proc Glasgow Functional Programming Workshop, July 1, 1996, View abstract, Download PDFOn the importance of being the right size: the challenge of conducting realistic experiments
Simon Peyton Jones, Cambridge University Press, June 1, 1996, View abstract, Download PDFGUM: a portable parallel implementation of Haskell
PW Trinder, K Hammond, JS Mattson, AS Partridge, Simon Peyton Jones, in ACM Conference on Programming Languages Design and Implementation (PLDI'96), ACM Press, May 21, 1996, View abstract, Download PDFLet-floating: moving bindings to give faster programs
WD Partain, A Santos, Simon Peyton Jones, in ACM SIGPLAN International Conference on Functional Programming (ICFP'96), ACM Press, May 1, 1996, View abstract, Download PDF, View external linkCompiling Haskell by Program Transformation: A Report from the Trenches
Simon Peyton Jones, in Proceedings of the European Symposium on Programming, Linkoping, April 1996, Eurographics, January 31, 1996, View abstract, Download PDFConcurrent Haskell
Simon Peyton Jones, Andy Gordon, Sigbjorn Finne, in POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, ACM Press, January 21, 1996, View abstract, Download PDFPictures: A Structured Graphics Model
Sigbjorn Finne, Simon Peyton Jones, Springer-Verlag, January 1, 1996, View abstract, View external link1995
State in Haskell
J Launchbury, Simon Peyton Jones, in Lisp and Symbolic Computation, Kluwer Academic, December 1, 1995, View abstract, Download PDF, View external linkComposing Haggis
S Finne, Simon Peyton Jones, in Proc 5th Eurographics Workshop on Programming Paradigms in Graphics, Maastricht, Eurographics, September 1, 1995, View abstract, Download PDFTime and space profiling for non-strict functional languages
Patrick M. Sansom, Simon Peyton Jones, in 22nd ACM Symposium on Principles of Programming Languages (POPL'95), January 1, 1995, View abstract, Download PDFTime and space profiling for non-strict, higher-order functional languages
PM Sansom, SL Peyton Jones, Simon Peyton Jones, in 22nd ACM Symposium on Principles of Programming Languages (POPL'95), ACM Press, January 1, 1995, View abstract, View external link1994
Automatic spark strategies and granularity for a parallel functional language reducer
K Hammond, JS Mattson, SL Peyton Jones, Simon Peyton Jones, in CONPAR, Springer Verlag, September 1, 1994, View abstractCheap Deforestation in Practice: An Optimiser for Haskell
AJ Gill, SL Peyton Jones, Simon Peyton Jones, in Proceedings of IFIP Conference, Hamburg, Germany, IFIP, August 1, 1994, View abstractLazy functional state threads
J Launchbury, Simon Peyton Jones, in ACM Conference on Programming Languages Design and Implementation, Orlando (PLDI'94), ACM Press, June 1, 1994, View abstract, Download PDFType classes in Haskell
K Hammond, SL Peyton Jones, PL Wadler, CV Hall, Simon Peyton Jones, in ACM Transactions on Programming Languages and Systems, European Symposium on Programming (ESOP'94), Springer Verlag LNCS 788, April 1, 1994, View abstract, Download PDFCompilation by transformation in the Glasgow Haskell Compiler
SL Peyton Jones, A Santos, Simon Peyton Jones, in Functional programming, Glasgow 1994, Springer, January 1, 1994, View abstract1993
How to give a good research talk
Simon Peyton Jones, John Hughes, John Launchbury, in SIGPLAN Notices, November 1, 1993, View abstract, Download PDFProcessing transactions on GRIP, a parallel graph reducer
G Akerholt, K Hammond, P Trinder, Simon Peyton Jones, in Proc Parallel Architectures and Languages Europe (PARLE), Munich, June 1, 1993, View abstract, Download PDFThe Glasgow Haskell Compiler: a technical overview
K Hammond, WD Partain, PL Wadler, CV Hall, Simon Peyton Jones, in Proceedings of Joint Framework for Information Technology Technical Conference, Keele, DTI/SERC, March 1, 1993, View abstract, Download PDFA short cut to deforestation
A Gill, J Launchbury, Simon Peyton Jones, in ACM Conference on Functional Programming and Computer Architecture (FPCA'93), ACM Press, January 1, 1993, View abstract, Download PDFGenerational garbage collection for Haskell
PM Sansom, Simon Peyton Jones, in ACM Conference on Functional Programming and Computer Architecture (FPCA'93), ACM Press, January 1, 1993, View abstract, Download PDFImperative functional programming
PL Wadler, Simon Peyton Jones, in 20th ACM Symposium on Principles of Programming Languages (POPL'93), ACM Press, January 1, 1993, View abstract, Download PDFMeasuring the effectiveness of a simple strictness analyser
Simon Peyton Jones, Will Partain, in Functional Programming, Glasgow 1993, Springer, January 1, 1993, View abstract, Download PDF1992
Implementing Lazy Functional Languages on Stock Hardware: The Spineless Tagless G-machine
Simon Peyton Jones, in Journal of Functional Programming, Cambridge University Press, July 9, 1992, View abstract, Download PDF, View external linkProfiling Lazy Functional Languages Working Paper
Patrick M Sansom, Simon Peyton Jones, May 18, 1992, View abstract, Download PDFA static semantics for Haskell
PL Wadler, Simon Peyton Jones, February 19, 1992, View abstract, Download PDFAvoiding Unnecessary Updates
J Launchbury, A Gill, RJM Hughes, S Marlow, SL Peyton Jones, PL Wadler, Simon Peyton Jones, Richard Hughes, Simon Marlow, in Functional Programming, Glasgow 1992, Springer, January 1, 1992, View abstractImplementing functional languages: a tutorial
DR Lester, Simon Peyton Jones, Prentice Hall, January 1, 1992, View abstract, Download PDF, View external link1991
Profiling scheduling strategies on the GRIP parallel reducer
K Hammond, Simon Peyton Jones, in Proc 1992 Workshop on Parallel Implementations of Functional Languages, Aachen, August 23, 1991, View abstract, Download PDFA parallel functional database on GRIP
G Akerholt, K Hammond, P Trinder, Simon Peyton Jones, in Proc Workshop on the Parallel Implementation of Functional Languages, Southampton, June 4, 1991, View abstract, Download PDFA modular fully-lazy lambda lifter in Haskell
Simon Peyton Jones, D Lester, in Software Practice and Experience, Wiley, May 1, 1991, View abstract, Download PDF, View external linkA practical technique for designing asynchronous finite-state machines
Simon Peyton Jones, Dept of Computing Science, University of Glasgow, April 1, 1991, View abstract, Download PDFA practical technique for designing asynchronous finite-state machines
SL Peyton Jones, Simon Peyton Jones, Department of Computing Science, University of Glasgow, April 1, 1991, View abstract, Download PDFA Futurebus interface from off-the-shelf parts
SL Peyton Jones, M Hardie, Simon Peyton Jones, in IEEE Micro, February 1, 1991, View abstractUnboxed values as first class citizens
J Launchbury, Simon Peyton Jones, in ACM Conference on Functional Programming and Computer Architecture (FPCA'91), Springer, January 1, 1991, View abstract, Download PDF1990
Restricted overloading
SL Peyton Jones, Simon Peyton Jones, December 1, 1990, View abstractSome Early Experiments on the GRIP Parallel Reducer
K Hammond, SL Peyton Jones, Simon Peyton Jones, in Proc Workshop on the Parallel Implementation of Functional Languages, Nijmegen, January 1, 1990, View abstract1989
The Spineless Tagless G-machine
SL Peyton Jones, Jon Salkild, Simon Peyton Jones, in Functional Programming Languages and Computer Architecture, Addison Wesley, September 1, 1989, View abstractHigh-performance parallel graph reduction
C Clack, J Salkild, Simon Peyton Jones, in Proc Parallel Architectures and Languages Europe (PARLE), Lecture notes in Computer Science, Springer Verlag, June 1, 1989, View abstract, View external linkParallel implementations of functional programming languages
Simon Peyton Jones, in Computer Journal, April 1, 1989, View abstract, Download PDF1988
The Spineless G-machine
Geoff Burn, SL Peyton Jones, John Robson, Simon Peyton Jones, in Proc ACM Conference on Lisp and Functional Programming, Snowbird, July 1, 1988, View abstractFLIC – a functional language intermediate code
SL Peyton Jones, Simon Peyton Jones, in SIGPLAN Notices, January 1, 1988, View abstractFunctional programming on the GRIP multiprocessor
Chris Clack, Jon Salkild, Mark Hardie, Simon Peyton Jones, in IEE Seminar on Digital Parallel Processors, Lisbon, Portugal, IEE, January 1, 1988, View abstract, View external link1987
GRIP – a high-performance architecture for parallel graph reduction
Chris Clack, Jon Salkild, Mark Hardie, Simon Peyton Jones, in Proc IFIP conference on Functional Programming Languages and Computer Architecture, Portland, Springer Verlag LNCS 274, September 1, 1987, View abstract, Download PDFThe Implementation of Functional Programming Languages
Simon Peyton Jones, Prentice Hall, January 1, 1987, View abstract, Download PDF1986
The four-stroke reduction engine
Chris Clack, SL Peyton Jones, Simon Peyton Jones, in Proc ACM Conference on Lisp and Functional Programming, August 1, 1986, View abstractParsing distfix operators
Simon Peyton Jones, in Communications of the ACM, February 1, 1986, View abstract, View external linkFinding fixpoints in abstract interpretation
SL Peyton Jones, CD Clack, Simon Peyton Jones, in Abstract Interpretation of Declarative Languages, Ellis Horwood, January 1, 1986, View abstractFunctional programming languages as a software engineering tool
SL Peyton Jones, Simon Peyton Jones, in Software Engineering - The Decade of Change, Peter Peregrinus, January 1, 1986, View abstract1985
Yacc in Sasl — an Exercise in Functional Programming
Peyton Jones, Simon L, Simon Peyton Jones, in Software—Practice & Experience, August 1, 1985, View abstractGenerating parallelism from strictness analysis
CD Clack, SL Peyton Jones, Simon Peyton Jones, February 1, 1985, View abstract1984
Arbitrary precision arithmetic using continued fractions
Simon Peyton Jones, January 27, 1984, View abstract, Download PDF1982
An investigation of the relative efficiencies of lambda expressions and combinators
SL Peyton Jones, Simon Peyton Jones, in Proc ACM symposium on Lisp and functional programming, January 1, 1982, View abstract1981
An Ada-compatible specification language
NCL Beale, SL Peyton Jones, Simon Peyton Jones, in Proc ACM conference, January 1, 1981, View abstractProjects
Why I work at Microsoft Research Cambridge – Simon Peyton Jones, Principal Researcher
Date
December 17, 2015
Speakers
Simon Peyton-Jones
Affiliation
Microsoft Research Cambridge
How to Give a Great Research Talk
Date
July 16, 2014
Speakers
Simon Peyton-Jones
How to Write a Great Research Paper
Date
July 16, 2014
Speakers
Simon Peyton-Jones
Compositional Data Access and Manipulation
Date
June 20, 2014
Speakers
Simon Peyton-Jones
Affiliation
Microsoft Research
Computing in K-12: radical change in the UK
Date
July 22, 2013
Speakers
Simon Peyton-Jones
Affiliation
Microsoft Research, Cambridge England
Computing at School – Interview with Simon Peyton-Jones
Date
December 18, 2012
Towards a Programming Language Nirvana
Date
July 16, 2012
Speakers
Simon Peyton-Jones
Getting From A-B: Fast Route-Finding Using Slow Computers
Date
December 7, 2010
Affiliation
Microsoft Research Cambridge
Harnessing the Multicores: Nested Data Parallelism in Haskell
Date
October 23, 2008
Speakers
Simon Peyton Jones
Affiliation
MSR Cambridge
A Taste of Haskell – Part 1
Date
July 23, 2007
Speakers
Simon Peyton-Jones
A Taste of Haskell – Part 2
Date
July 23, 2007
Simon Peyton Jones – A History of Haskell: being lazy with class
Date
June 10, 2007
Speakers
Simon Peyton Jones
Other
A collection of pictures of me, at various resolutions. There is also, for amusement, picture of me having fun, taken by John Peterson.
- Very low resolution
- Very low resolution
- High resolution 2016
- High resolution 2016
- High resolution 2016
- High resolution 2016
- High resolution 2016
- High resolution 2013-14
- High resolution 2013-14
- High resolution 2013-14
- High resolution 2013-14
- High resolution 2013-14
- High resolution 2013-14
- High resolution 2013-14
- High resolution 2013-14
- High resolution 2006
- High resolution 2006
- High resolution 2006
- High resolution 2006
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
- Medium resolution very old
Biography
A brief biography, suitable for seminar announcements and suchlike
Simon Peyton Jones, MA, FACM, FBCS, 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.
Simon’s main research interest is in functional programming languages, their implementation, and their application. 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, Simon is interested in language design, rich type systems, 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 is one reason he loves functional programming so much.
Simon is also chair of Computing at School, the grass-roots organisation that was at the epicentre of the 2014 reform of the English computing curriculum.