Daniel Patterson

I’m currently a graduate student at Northeastern University studying programming languages, type systems, and language interoperability with Amal Ahmed. If you want to learn more about what we’re working on, Amal gave a keynote on our research at StrangeLoop 2018. Previously, I helped start and run a worker-owned software contracting company, Position Development. I studied math and computer science undergrad at Brown University where I worked with Shriram Krishnamurthi. I’m interested in programming languages, education, and leftist politics. This is my personal website.


The easiest way to get in touch is via email: [email protected]. Note that if you have another email address for me, it will probably work as well. I’m currently located in Boston, MA.


The Next 700 Compiler Correctness Theorems (Functional Pearl).
Daniel Patterson and Amal Ahmed.
ICFP 2019. PDF.
Phantom Contracts for Better Linking.
Daniel Patterson.
POPL 2019 Student Research Competition. Extended abstract and poster.
Rust Distilled: An Expressive Tower of Languages.
Aaron Weiss, Daniel Patterson, and Amal Ahmed.
ML 2018. PDF.
FunTAL: Reasonably Mixing a Functional Language with Assembly.
Daniel Patterson, Jamie Perconti, Christos Dimoulas, and Amal Ahmed.
PLDI 2017. PDF and appendix.
Linking Types for Multi-Language Software: Have Your Cake and Eat It Too.
Daniel Patteron and Amal Ahmed.
SNAPL 2017. PDF.
Linking Types: Specifying Safe Interoperability and Equivalences.
Daniel Patterson.
POPL 2017 Student Research Competition. Extended abstract and poster.
CaptainTeach: Multi-Stage, In-Flow Peer Review for Programming Assignments.
Joe Gibbs Politz, Daniel Patterson, Kathi Fisler, and Shriram Krishnamurthi.
ITiCSE 2014. PDF.
Python: The Full Monty―A Tested Semantics for the Python Programming Language.
Joe Gibbs Politz, Alejandro Martinez, Matthew Milano, Sumner Warren, Daniel Patterson, Junsong Li, Anand Chitipothu, and Shriram Krishnamurthi.
OOPSLA 2013. PDF, appendix and code.


Fall 2019: CS4910: Verified Compilers and Multi-Language Software


On Compositional Compiler Correctness and Fully Abstract Compilation.
Principles of Secure Compilation at POPL 2017. slides (no video).
FunTAL: Reasonably Mixing a Functional Language with Assembly.
PLDI 2017. slides and video.
Artifacts for Semantics: An OCaml Experiment.
New England Programming Languages and Systems Symposium June 2017. slides (no video).
Linking Types for Multi-Language Software: Have Your Cake and Eat It Too;.
SNAPL 2017. slides (no video).
Linking Types: Secure compilation of multi-language programs.
Secure Compilation Meeting at POPL 2017. slides (no video).
Typed routing with continuations.
New York Haskell Meetup April 2016. slides (or with animations, which may be helpful) and video.
Types and Testing in Haskell.
New York Haskell Meetup November 2014. slides and video.



A current resume is available in PDF form.

I’m at github.com/dbp (code), twitter.com/dbp__ (politics), and instagram.com/dbp____ (food & art).

My public key is A98D4AF0. Old keys are 9A0C792F, B5FF6961. I’m at keybase.io/dbp, if that’s easier. My ssh public key is here.