Principles of Parallel Computing


The goal  is to enable efficient and parallelism on shared memory systems.  Current work includes the development of abstractions, algorithms, and language systems based on C++ and Standard ML.  Specific projects include:

  • The Steel Project: this project aims to develop a high performance parallel functional language.  
  • The Paris Project: Parallelism has been a subject of study for many decades, leading to the development of many different approaches.  While these different approaches all pursue similar goals, their details and consequences vary, leading to a diversity of abstractions, languages, and systems.  In the Paris project, we aim to unify these different approaches to parallelism by developing the foundations of a unified theory.


See our publications.



This project is funded by grants from NSF, EU-ERC, and Microsoft Research.