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: this project aims to bring together many different approaches to parallelism by developing a unified theory.
  • Responsive Parallelism Project: this project aims to develop a model of computing that combines elements of concurrency (competitive threading) and parallelism (collaborative threading) under the same roof.  


See our publications.



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