Located in beautiful, historic Providence, our work unifies under themes of design, learning, and languages. We build languages, analyze them, and take them apart. We work on verification and other forms of formal methods. We create environments and other tools for working with languages and verifiers. We also write books for understanding these topics. If you want to learn more or join us,get in touch
Pyret is the main language we're currently working on. We combine the best of functional and scripting languages to create an outstanding language for teaching and, down the road, general-purpose programming. Pyret is an umbrella for several efforts in compilation, type systems, error-reporting, language design, and much more.
Forge is a new tool and collection of languages for formal modeling. Forge is heavily inspired by Alloy, but offers its own opinionated take on modeling, analysis, and verification.
A Data-Centric Introduction to Computing is a new book that lays out our research-driven approach to learning programming, following our data-centric perspective. Suppporting it requires a lot of the other work described on this page.
Programming Languages: Application and Interpretation is our programming languages book, in widespread use. All three editions are available online.
We have five faculty members (Shriram Krishnamurthi, Kathi Fisler, Rob Lewis, Tim Nelson, Milda Zizyte), one post-doc (Will Crichton), five PhD students (Yanyan Ren, Kuang-Chen Lu, Elijah Rivera, Siddhartha Prasad, Skyler Austen), several undergraduates, and a research programmer (Dorai Sitaram).
Several other faculty in the department have done work that is related to ours, including Maurice Herlihy, Vasileios Kemerlis, Michael Littman, Steve Reiss, Daniel Ritchie, Malte Schwarzkopf, Nikos Vasilakis.
We often blog about our work. Our blog is a convenient, lightweight way to learn about some of our research.
All of our papers are online. They have associated repositories of code, data, proofs, and other artifiacts, as appropriate.
Most of our recent work is in our github repository, although individual papers have their own repositories elsewhere. In general, a paper's page above is the best source for material about that paper.