Hi! 👋 I'm Sam (he/him). I'm a third-year PhD student in S3D at CMU, advised by Joshua Sunshine. I research programming language design and compiler implementation for visualization. Check out Penrose!
Outside of work, I love bouldering, performing improv comedy, playing Terraforming Mars, and baking. I'm also always looking for music and book recommendations, and trying to get my friends to join Letterboxd because it lets us take the set intersection of the movies you want to watch with the movies I want to watch (how cool is that?)
Here are a few toys I've made over the years.
Look, some polygons! Drag them around to see their Minkowski sum. (Still a work in progress.)
See how the elliptic curve group law is associative: click three points to get each of their pairwise sums, then click the magnifying glass to see that all the three-way sums converge at the same point. Hit escape to reset or use the box in the top-left to select alternative parameters for the curve.
Type Lispy lambda calculus expressions like
((λ x x) 42) to see their reduced form. Backslash
λ, and parentheses are
- NaNofuzz: A Usable Tool for Automatic Test Generation, in ESEC/FSE 2023, by Matthew C. Davis, Sangheon Choi, Sam Estep, Brad A. Myers, and Joshua Sunshine.
- Gradual Program Analysis for Null Pointers, in ECOOP 2021, by Sam Estep, Jenna DiVincenzo, Jonathan Aldrich, Éric Tanter, Johannes Bader, and Joshua Sunshine.
I don't blog much.
- 2021-02-20 Parallelizing nvcc