I am an Assistant Professor in the Computer Science Department at Yale University, where I am also affiliated with the Wu Tsai Institute. My group develops programming languages and systems that automate and scale up principled probabilistic reasoning.
My research aims to automate and scale up principled probabilistic reasoning, in much the same way that tools like TensorFlow and PyTorch have automated and scaled up deep learning. To that end, I develop:
Probabilistic program compilers that automate and speed up the math behind learning and inference: e.g., a new AD algorithm that automatically constructs gradient estimators for optimizing probabilistic objectives, an expressive discrete probabilistic programming language called Pluck that exploits laziness for efficient inference, and a new compiler for Gen programs that synthesizes fast, unbiased estimators of probability densities and their reciprocals, for use in Monte Carlo and variational inference.

Our research group is the Probabilistic Languages at Yale (PLaYa) Lab.
Selected publications are listed below; please see Google Scholar for a complete list. Asterisks (*) indicate co-first authorship. Daggers (†) indicate co-senior authorship.
Some of my research talks are available online with video recordings:
At Yale, I am teaching CPSC 5585: Probabilistic Programming in Fall 2026. I have previously taught CPSC 2010: Introduction to Computer Science (Spring 2026) and a graduate seminar, CPSC 7260: Differentiable and Probabilistic Programming Languages (Fall 2025).
At MIT, I co-taught a January-term course on applied probabilistic programming, and served twice as a TA for 6.885: Probabilistic Programming & AI.
From 2015 to 2018, I taught computer science full-time at Commonwealth School.
Email me at alexander DOT lew AT yale DOT edu.