My name is Sam Stites – I'm a Ph.D. student at the Northeastern PRL studying Bayesian inference and the semantics of probabilistic programming languages (PPLs). Before joining the PRL in 2022 I was part of the data@NU lab researching deep probabilistic programming. Prior to starting my Ph.D. program I was in industry for a 7-year stretch.
Contact: The best way to contact me is by email. Apply ROT13 to the
following: [email protected]. I'm also reachable as .stites on discord.
Feel free to reach out if want to talk about stenography, racket, agda, or parenting in
grad school.
#Code
- (in progress) quickchecking MCMC algorithms using exact inference.
- multippl, a rust compiler and formalization that prototypes a multi-language approaches to probabilistic inference.
- Inference combinators, reborn in coix, is actively developed by my equally-contributing first author Heiko Zimmerman
- redirect-to-abstract (github)
- Hasktorch is now in long-term maintenance mode with Junji Hashimoto
- reinforce reinforcement learning in Haskell.
- CSSR (v2). Causal State Splitting Reconstruction of recursive hidden Markov models. I coded this up the successor to CSSR with Cosma Shalizi before starting my Ph.D. studies. It is currently in an unpublished state but if this work is relevant to you, please reach out to Cosma and cc me.
#Teaching
Curriculum development:
- Fall 2025: I am helping Josh Gancher with the curriculum rewrite of CS2800 Logic and Computation (and have applied to be an instructor of record for 2800 in the Spring!)
- Fall 2024: I helped develop and co-teach the "Mechanizing Metatheory" module in Chris Martens' CS7800 Intensive Principles of Programming Languages. Lecture notes for the first introductory class can be found here,
Teaching Assistant positions:
-
Fall 2025: CS2800 Logic and Computation
- Office Hours: Tuesday 1-3pm (Snell 047)
- Spring 2025: CS2800 Logic and Computation
-
Spring 2024: CS4400 Introduction to Programming Languages
- Guest lecture: Probabilistic Programming Languages
- Wrote autograding infrastructure in Racket and OCaml
- Fall 2020: CS6220 Data Mining Techniques
#Publications and Talks
Ongoing work:
Sam Stites, Steven Holtzen. Quickchecking Markov Chain Monte Carlo with Probabilistic Circuits.
Under review:
Lisa Oakley, Sam Stites, Cameron Moy, Steven Holtzen, Alina Oprea, Marco Gaboardi. A Bayesian Approach to Membership Inference.
Peer-reviewed work:
Sam Stites, John M. Li, Steven Holtzen. Multi-Language Probabilistic Programming. Proceedings of the ACM on Programming Languages, Volume 9, Issue OOPSLA1. Article No.: 124, Pages 1239 - 1266. (doi, pdf, pdf-full, code)
Sam Stites, Steven Holtzen. A Multi-Language Approach to Probabilistic Program Inference. The Languages for Inference (LAFI) Workshop at POPL 2024 (abs, talk).
Heiko Zimmermann, Hao Wu, Babak Esmaeili, Sam Stites, Jan-Willem van de Meent. Nested Variational Inference. Third Symposium on Advances in Approximate Bayesian Inference. 2021 (openreview, AABI2021)
Sam Stites, Heiko Zimmermann, Hao Wu, Eli Sennesh, Jan-Willem van de Meent. Learning Proposals for Probabilistic Programs with Inference Combinators. Proceedings of the Thirty-Seventh Conference on Uncertainty in Artificial Intelligence, PMLR 161:1056-1066, 2021. (abstract, pdf-full, code)
Sam Stites, Austin Huang. Hasktorch: A Comprehensive Haskell Library for Differentiable Functional Programming. Poster, Pytorch DevCon, 2018. (poster)
Sam Stites, Austin Huang. Hasktorch: A Comprehensive Haskell Library for Differentiable Functional Programming. The Numerical Programming in Functional Languages workshop (NPFL) at the International Conference of Functional Programming, 2018 (NPFL, talk)
#Service
- SIGPLAN-M Mentor (2023-)
- PLDI 2023 Student Volunteer
- AISTATS 2022 Reviewer
- Northeastern 2022 Faculty Admissions Volunteer
- Northeastern 2021 Ph.D. Review Committee Volunteer
-
Google Summer of Code Mentor (2019)